锘??xml version="1.0" encoding="utf-8" standalone="yes"?>免费看亚洲片,欧美性大战久久久久久久蜜臀,一区二区三区日韩欧美http://www.shnenglu.com/Mumoo/zh-cnWed, 24 Sep 2025 01:25:00 GMTWed, 24 Sep 2025 01:25:00 GMT60紱佹ListCtrl琛ㄥご鎷栧姩http://www.shnenglu.com/Mumoo/archive/2013/11/18/204301.htmlMumooMumooMon, 18 Nov 2013 01:33:00 GMThttp://www.shnenglu.com/Mumoo/archive/2013/11/18/204301.htmlhttp://www.shnenglu.com/Mumoo/comments/204301.htmlhttp://www.shnenglu.com/Mumoo/archive/2013/11/18/204301.html#Feedback1http://www.shnenglu.com/Mumoo/comments/commentRss/204301.htmlhttp://www.shnenglu.com/Mumoo/services/trackbacks/204301.html杞澆~~~~~~~~~~~~婧愬湴鍧蹇樿浜唦~~~~~
紱佹ListCtrl琛ㄥご鎷栧姩錛圥revent CListCtrl column resizing錛?br />/*The header control in the ListView control sends notification to the parent window (e.i. the ListView) before it begins resizing a column. We can override the OnNotify() function in the CListCtrl derived class to handle this notification. The code below prevents resizing of all columns. Note that the resize cursor still shows up. */
BOOL CMyListCtrl::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult)
{
switch (((NMHDR*)lParam)->code)
{
case HDN_BEGINTRACKW:
case HDN_BEGINTRACKA:
*pResult = TRUE; // disable tracking
return TRUE; // Processed message
}

return CListCtrl::OnNotify(wParam, lParam, pResult);
}  
/*
If you want to prevent resizing of only one column, you should check for the value in iItem field of the HD_NOTIFY structure. The code below stops only the first column from being resized. */

BOOL CMyListCtrl::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult)
{
HD_NOTIFY *pHDN = (HD_NOTIFY*)lParam;

if((pHDN->hdr.code == HDN_BEGINTRACKW || pHDN->hdr.code == HDN_BEGINTRACKA)
&& pHDN->iItem == 0) // Prevent only first (col# 0) from resizing
{
*pResult = TRUE; // disable tracking
return TRUE; // Processed message
}

return CListCtrl::OnNotify(wParam, lParam, pResult);



Mumoo 2013-11-18 09:33 鍙戣〃璇勮
]]>
CStdioFile鐢ㄦ硶 闅忕瑪http://www.shnenglu.com/Mumoo/archive/2013/10/23/203883.htmlMumooMumooWed, 23 Oct 2013 01:56:00 GMThttp://www.shnenglu.com/Mumoo/archive/2013/10/23/203883.htmlhttp://www.shnenglu.com/Mumoo/comments/203883.htmlhttp://www.shnenglu.com/Mumoo/archive/2013/10/23/203883.html#Feedback0http://www.shnenglu.com/Mumoo/comments/commentRss/203883.htmlhttp://www.shnenglu.com/Mumoo/services/trackbacks/203883.html鍚戝凡瀛樺湪鐨勬枃浠朵腑鎻掑叆棣栬
BOOL AddTitleColumn(CString &sTxtFile)
{
 CStdioFile stdFile;
 if ( stdFile.Open(sTxtFile,  CFile::modeCreate | CFile::modeNoTruncate
  | CFile::modeReadWrite|CFile::shareExclusive) )
 {
  CIni ini(CCommonFun::GetExecutablePath() +"Config.ini");
  CString sTitleRow = ini.GetString("ListCtrl", "ViewColumName");

  CStringArray arrLines;
  arrLines.Add(sTitleRow);

  stdFile.SeekToBegin();
  CString str;
  while(stdFile.ReadString(str))
  {
   arrLines.Add(str);
  }

  stdFile.SeekToBegin();
  int nCount = arrLines.GetSize();
  for ( int i = 0; i < nCount; i++ )
  {
   CString sContent;
   if (i > 0)
   {
    sContent.Format("%d,%s", i, arrLines[i]);
   }
   else
   {
    sContent = arrLines[i];
   }

   stdFile.WriteString (sContent);
   stdFile.WriteString ("\n");
  }

  stdFile.Close();
  return TRUE;
 }
 return FALSE;
}

鐢熸垚涓涓甫鏍囬鐨勬枃浠?/strong>

BOOL CBarView::ExportDataFile(CString sDataFile/*, CStringArray &arsWriteString*/)
{
 CStdioFile stdFile;
 if ( stdFile.Open(sDataFile,  CFile::modeCreate | CFile::modeNoTruncate
  | CFile::modeReadWrite|CFile::shareExclusive) )
 {
  CString sTitleRow = "搴忓彿,鏂囦歡鍚?浠芥暟,欏墊暟";
  stdFile.WriteString (sTitleRow);
  stdFile.WriteString ("\n");

  for (int i = 0; i < (int)m_data.data.size(); i++)
  {
   CString sLineData;
   for (int j = 0; j < (int)m_data.data.at(i).size(); j++)
   {
    CString sData = m_data.data.at(i).at(j);
    if (j != 0)
    {
     sData.Format(", %s", sData);
    }
    else
    {
     sData.Format("%s", sData);
    }

    sLineData += sData;
   }

   CString sLine;
   sLine.Format("%d, %s", (i+1), sLineData);
   stdFile.WriteString (sLine);
   stdFile.WriteString ("\n");
  }

  stdFile.Close();
  return TRUE;
 }

 LOG("鍒涘緩鏂囦歡 %s 澶辮觸", sDataFile);
 return FALSE;
}



Mumoo 2013-10-23 09:56 鍙戣〃璇勮
]]>
ListCtrl Relatehttp://www.shnenglu.com/Mumoo/archive/2013/10/10/203631.htmlMumooMumooThu, 10 Oct 2013 02:51:00 GMThttp://www.shnenglu.com/Mumoo/archive/2013/10/10/203631.htmlhttp://www.shnenglu.com/Mumoo/comments/203631.htmlhttp://www.shnenglu.com/Mumoo/archive/2013/10/10/203631.html#Feedback0http://www.shnenglu.com/Mumoo/comments/commentRss/203631.htmlhttp://www.shnenglu.com/Mumoo/services/trackbacks/203631.html鍒犻櫎鎵鏈夊垪鏁幫細while(m_listCtrl->DeleteColumn(0));

Mumoo 2013-10-10 10:51 鍙戣〃璇勮
]]>
ListCtrl鎺т歡鏂規硶http://www.shnenglu.com/Mumoo/archive/2013/04/15/199461.htmlMumooMumooMon, 15 Apr 2013 09:20:00 GMThttp://www.shnenglu.com/Mumoo/archive/2013/04/15/199461.htmlhttp://www.shnenglu.com/Mumoo/comments/199461.htmlhttp://www.shnenglu.com/Mumoo/archive/2013/04/15/199461.html#Feedback0http://www.shnenglu.com/Mumoo/comments/commentRss/199461.htmlhttp://www.shnenglu.com/Mumoo/services/trackbacks/199461.html

鍦ㄧ綉涓婃煡鎵劇殑ListCtrl鏂規硶

浠ヤ笅鏈粡璇存槑錛?span style="line-height: 1.3em">listctrl榛樿view椋庢牸涓?span style="line-height: 1.3em">report
-------------------------------------------------------------------------------
1. CListCtrl 椋庢牸
LVS_ICON: 涓烘瘡涓?span style="line-height: 1.3em">item鏄劇ず澶у浘鏍?br />LVS_SMALLICON: 涓烘瘡涓?span style="line-height: 1.3em">item鏄劇ず灝忓浘鏍?br />LVS_LIST: 鏄劇ず涓鍒楀甫鏈夊皬鍥炬爣鐨?span style="line-height: 1.3em">item
LVS_REPORT: 鏄劇ずitem璇︾粏璧勬枡
鐩磋鐨勭悊瑙o細windows璧勬簮綆$悊鍣紝"鏌ョ湅"鏍囩涓嬬殑"澶у浘鏍囷紝灝忓浘鏍囷紝鍒楄〃錛岃緇嗚祫鏂?br />--------------------------------------------------------------------------------
2. 璁劇疆listctrl椋庢牸鍙婃墿灞曢鏍?
LONG lStyle;
lStyle = GetWindowLong(m_list.m_hWnd, GWL_STYLE);//鑾峰彇褰撳墠紿楀彛style
lStyle &= ~LVS_TYPEMASK; //娓呴櫎鏄劇ず鏂瑰紡浣?br />lStyle |= LVS_REPORT; //璁劇疆style
SetWindowLong(m_list.m_hWnd, GWL_STYLE, lStyle);//璁劇疆style
DWORD dwStyle = m_list.GetExtendedStyle();
dwStyle |= LVS_EX_FULLROWSELECT;//閫変腑鏌愯浣挎暣琛岄珮浜紙鍙傜敤涓?span style="line-height: 1.3em">report椋庢牸鐨?span style="line-height: 1.3em">listctrl錛?br />dwStyle |= LVS_EX_GRIDLINES;//緗戞牸綰匡紙鍙傜敤涓?span style="line-height: 1.3em">report椋庢牸鐨?span style="line-height: 1.3em">listctrl錛?br />dwStyle |= LVS_EX_CHECKBOXES;//item鍓嶇敓鎴?span style="line-height: 1.3em">checkbox鎺т歡
m_list.SetExtendedStyle(dwStyle); //璁劇疆鎵╁睍椋庢牸
娉細listview鐨?span style="line-height: 1.3em">style璇鋒煡闃?span style="line-height: 1.3em">msdn
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceshellui5/html/wce50lrflistviewstyles.asp
--------------------------------------------------------------------------------
3. 鎻掑叆鏁版嵁
m_list.InsertColumn( 0, "ID", LVCFMT_LEFT, 40 );//鎻掑叆鍒?br />m_list.InsertColumn( 1, "NAME", LVCFMT_LEFT, 50 );

//鏂版彃鍏ョ殑鍦ㄤ笂闈?br />int nRow = m_list.InsertItem(0, "11");// 鎻掑叆琛?br />m_list.SetItemText(nRow, 1, "jacky");//璁劇疆鍏跺畠鍒楁暟鎹?/span>

//鏂版彃鍏ョ殑鏁版嵁鍦ㄤ笅闈?/span>

int nIndex = m_list.GetItemCount();
LV_ITEM lvItem;
lvItem.mask = LVIF_TEXT ;
lvItem.iItem = nIndex; //琛屾暟
lvItem.iSubItem = 0;
lvItem.pszText = (char*)(LPCTSTR)strCount; //絎竴鍒?br />//鍦ㄦ渶鍚庝竴琛屾彃鍏ヨ褰曞?
m_list.InsertItem(&lvItem);
//鎻掑叆鍏跺畠鍒?br />m_list.SetItemText(nIndex,1,strLat);

--------------------------------------------------------------------------------
4. 涓鐩撮変腑item
閫変腑style涓殑Show selection always錛屾垨鑰呭湪涓婇潰絎?span style="line-height: 1.3em">2
鐐逛腑璁劇疆LVS_SHOWSELALWAYS
--------------------------------------------------------------------------------
5. 閫変腑鍜屽彇娑堥変腑涓琛?
int nIndex = 0;
//閫変腑
m_list.SetItemState(nIndex, LVIS_SELECTED|LVIS_FOCUSED, LVIS_SELECTED|LVIS_FOCUSED);
//鍙栨秷閫変腑
m_list.SetItemState(nIndex, 0, LVIS_SELECTED|LVIS_FOCUSED);
--------------------------------------------------------------------------------
6. 寰楀埌listctrl涓墍鏈夎鐨?span style="line-height: 1.3em">checkbox鐨勭姸鎬?br />m_list.SetExtendedStyle(LVS_EX_CHECKBOXES);
CString str;
for(int i=0; i<m_list.GetItemCount(); i++)
{
if( m_list.GetItemState(i, LVIS_SELECTED) == LVIS_SELECTED || m_list.GetCheck(i))
{
str.Format(_T("絎?span style="line-height: 1.3em">%d琛岀殑checkbox涓洪変腑鐘舵?span style="line-height: 1.3em">"), i);
AfxMessageBox(str);
}
}
--------------------------------------------------------------------------------
7. 寰楀埌listctrl涓墍鏈夐変腑琛岀殑搴忓彿
鏂規硶涓錛?
CString str;
for(int i=0; i<m_list.GetItemCount(); i++)
{
if( m_list.GetItemState(i, LVIS_SELECTED) == LVIS_SELECTED )
{
str.Format(_T("閫変腑浜嗙%d琛?span style="line-height: 1.3em">"), i);
AfxMessageBox(str);
}
}
鏂規硶浜岋細
POSITION pos = m_list.GetFirstSelectedItemPosition();
if (pos == NULL)
TRACE0("No items were selected!\n");
Else
{
while (pos)
{
int nItem = m_list.GetNextSelectedItem(pos);
TRACE1("Item %d was selected!\n", nItem);
// you could do your own processing on nItem here
}
}
--------------------------------------------------------------------------------
8. 寰楀埌item鐨勪俊鎭?br />TCHAR szBuf[1024];
LVITEM lvi;
lvi.iItem = nItemIndex;
lvi.iSubItem = 0;
lvi.mask = LVIF_TEXT;
lvi.pszText = szBuf;
lvi.cchTextMax = 1024;
m_list.GetItem(&lvi);
鍏充簬寰楀埌璁劇疆item鐨勭姸鎬侊紝榪樺彲浠ュ弬鑰?span style="line-height: 1.3em">msdn鏂囩珷
Q173242: Use Masks to Set/Get Item States in ClistCtrl
http://support.microsoft.com/kb/173242/en-us
--------------------------------------------------------------------------------
9. 寰楀埌listctrl鐨勬墍鏈夊垪鐨?span style="line-height: 1.3em">header
瀛楃涓插唴瀹?br />LVCOLUMN lvcol;
char str[256];
int nColNum;
CString strColumnName[4];//鍋囧鏈?span style="line-height: 1.3em">4鍒?br />nColNum = 0;
lvcol.mask = LVCF_TEXT;
lvcol.pszText = str;
lvcol.cchTextMax = 256;
while(m_list.GetColumn(nColNum, &lvcol))
{
strColumnName[nColNum] = lvcol.pszText;
nColNum++;
}
--------------------------------------------------------------------------------
10. 浣?span style="line-height: 1.3em">listctrl涓竴欏瑰彲瑙侊紝鍗蟲粴鍔ㄦ粴鍔ㄦ潯
m_list.EnsureVisible(i, FALSE);
--------------------------------------------------------------------------------
11. 寰楀埌listctrl鍒楁暟
int nHeadNum = m_list.GetHeaderCtrl()->GetItemCount();
--------------------------------------------------------------------------------
12. 鍒犻櫎鎵鏈夊垪
鏂規硶涓錛?
while ( m_list.DeleteColumn (0))
鍥犱負浣犲垹闄や簡絎竴鍒楀悗錛屽悗闈㈢殑鍒椾細渚濇鍚戜笂縐誨姩銆?
鏂規硶浜岋細
int nColumns = 4;
for (int i=nColumns-1; i>=0; i--)
m_list.DeleteColumn (i);
--------------------------------------------------------------------------------
13. 寰楀埌鍗曞嚮鐨?span style="line-height: 1.3em">listctrl鐨勮鍒楀彿
娣誨姞listctrl鎺т歡鐨?span style="line-height: 1.3em">NM_CLICK娑堟伅鐩稿簲鍑芥暟
void CTest6Dlg::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
// 鏂規硶涓錛?
/*
DWORD dwPos = GetMessagePos();
CPoint point( LOWORD(dwPos), HIWORD(dwPos) );
m_list.ScreenToClient(&point);
LVHITTESTINFO lvinfo;
lvinfo.pt = point;
lvinfo.flags = LVHT_ABOVE;
int nItem = m_list.SubItemHitTest(&lvinfo);
if(nItem != -1)
{
CString strtemp;
strtemp.Format("鍗曞嚮鐨勬槸絎?span style="line-height: 1.3em">%d琛岀%d鍒?span style="line-height: 1.3em">", lvinfo.iItem, lvinfo.iSubItem);
AfxMessageBox(strtemp);
}
*/
// 鏂規硶浜?span style="line-height: 1.3em">:
/*
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
if(pNMListView->iItem != -1)
{
CString strtemp;
strtemp.Format("鍗曞嚮鐨勬槸絎?span style="line-height: 1.3em">%d琛岀%d鍒?span style="line-height: 1.3em">",
pNMListView->iItem, pNMListView->iSubItem);
AfxMessageBox(strtemp);
}
*/
*pResult = 0;
}
--------------------------------------------------------------------------------
14. 鍒ゆ柇鏄惁鐐瑰嚮鍦?span style="line-height: 1.3em">listctrl鐨?span style="line-height: 1.3em">checkbox涓?br />娣誨姞listctrl鎺т歡鐨?span style="line-height: 1.3em">NM_CLICK娑堟伅鐩稿簲鍑芥暟
void CTest6Dlg::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
DWORD dwPos = GetMessagePos();
CPoint point( LOWORD(dwPos), HIWORD(dwPos) );
m_list.ScreenToClient(&point);
LVHITTESTINFO lvinfo;
lvinfo.pt = point;
lvinfo.flags = LVHT_ABOVE;
UINT nFlag;
int nItem = m_list.HitTest(point, &nFlag);
//鍒ゆ柇鏄惁鐐瑰湪checkbox涓?br />if(nFlag == LVHT_ONITEMSTATEICON)
{
AfxMessageBox("鐐瑰湪listctrl鐨?span style="line-height: 1.3em">checkbox涓?span style="line-height: 1.3em">");
}
*pResult = 0;
}
--------------------------------------------------------------------------------
15. 鍙抽敭鐐瑰嚮listctrl鐨?span style="line-height: 1.3em">item寮瑰嚭鑿滃崟
娣誨姞listctrl鎺т歡鐨?span style="line-height: 1.3em">NM_RCLICK娑堟伅鐩稿簲鍑芥暟
void CTest6Dlg::OnRclickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
if(pNMListView->iItem != -1)
{
DWORD dwPos = GetMessagePos();
CPoint point( LOWORD(dwPos), HIWORD(dwPos) );
CMenu menu;
VERIFY( menu.LoadMenu( IDR_MENU1 ) );
CMenu* popup = menu.GetSubMenu(0);
ASSERT( popup != NULL );
popup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, this );
}
*pResult = 0;
}

16. item鍒囨崲鐒︾偣鏃?span style="line-height: 1.3em">(鍖呮嫭鐢ㄩ敭鐩樺拰榧犳爣鍒囨崲item鏃?span style="line-height: 1.3em">)錛岀姸鎬佺殑涓浜涘彉鍖栭『搴?br />娣誨姞listctrl鎺т歡鐨?span style="line-height: 1.3em">LVN_ITEMCHANGED娑堟伅鐩稿簲鍑芥暟
void CTest6Dlg::OnItemchangedList1(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
// TODO: Add your control notification handler code here
CString sTemp;
if((pNMListView->uOldState & LVIS_FOCUSED) == LVIS_FOCUSED && (pNMListView->uNewState & LVIS_FOCUSED) == 0)
{
sTemp.Format("%d losted focus",pNMListView->iItem);
}
else if((pNMListView->uOldState & LVIS_FOCUSED) == 0 &&
(pNMListView->uNewState & LVIS_FOCUSED) == LVIS_FOCUSED)
{
sTemp.Format("%d got focus",pNMListView->iItem);
}
if((pNMListView->uOldState & LVIS_SELECTED) == LVIS_SELECTED &&
(pNMListView->uNewState & LVIS_SELECTED) == 0)
{
sTemp.Format("%d losted selected",pNMListView->iItem);
}
else if((pNMListView->uOldState & LVIS_SELECTED) == 0 && (pNMListView->uNewState & LVIS_SELECTED) == LVIS_SELECTED)
{
sTemp.Format("%d got selected",pNMListView->iItem);
}
*pResult = 0;
--------------------------------------------------------------------------------
17. 寰楀埌鍙︿竴涓繘紼嬮噷鐨?span style="line-height: 1.3em">listctrl鎺т歡鐨?span style="line-height: 1.3em">item鍐呭
http://www.codeproject.com/threads/int64_memsteal.asp

--------------------------------------------------------------------------------
18. 閫変腑listview涓殑item
Q131284: How To Select a Listview Item Programmatically
http://support.microsoft.com/kb/131284/en-us

--------------------------------------------------------------------------------
19. 濡備綍鍦?span style="line-height: 1.3em">CListView
涓嬌鐢?span style="line-height: 1.3em">CListCtrl鐨勬淳鐢熺被
http://www.codeguru.com/cpp/controls/listview/introduction/article.php/c919/

--------------------------------------------------------------------------------
20. listctrl鐨?span style="line-height: 1.3em">subitem
娣誨姞鍥炬爣
m_list.SetExtendedStyle(LVS_EX_SUBITEMIMAGES);
m_list.SetItem(..); //鍏蜂綋鍙傛暟璇峰弬鑰?span style="line-height: 1.3em">msdn


}

str.Format("浣犲弻鍑諱簡:%d琛岋紝%d鍒?,pList->iItem,pList->iSubItem);
MessageBox(str);

*pResult = 0;
}


甯哥敤鎿嶄綔錛?br />1銆佹坊鍔犲垪鏍囬澶達細InsertColumn
2銆佽幏鍙栦笌璁劇疆鍒楀錛欸etColumnWidth銆丼etColumnWidth
3銆佹坊鍔犱竴琛岋細InsertItem銆丼etItemText
4銆佽幏鍙栦笌璁劇疆鍗曞厓鏂囨湰錛欸etItemText銆丼etItemText
5銆佸厑璁稿琛岄変腑鏃訛紝鑾峰彇閫変腑鐨勮鏁幫細GetSelectedCount
6銆佸崟琛岄変腑鏃訛紝鑾峰彇閫変腑鐨勮錛欸etSelectionMark
7銆侀変腑鏌愯錛歋etItemState(n, LVIS_SELECTED, LVIS_SELECTED);鍙栨秷閫変腑鐨勮SetItemState(n,0,-1);浣跨敤姝ゅ嚱鏁板墠闇瑕佸厛璋冪敤SetFocus();
8銆佽幏鍙栨煇琛岀殑鐘舵佹槸鍚︿負閫変腑錛欸etItemState(n, LVIS_SELECTED) == LVIS_SELECTED
9銆佸垹闄ゆ墍鏈夎錛欴eleteAllItems
10銆佸垹闄ゆ寚瀹氬垪錛欴eleteColumn
11銆佸垹闄ゆ寚瀹氳錛欴eleteItem
12銆佽幏鍙栦笌璁劇疆鍒楄〃鎺т歡鐨勮儗鏅壊錛欸etBkColor銆丼etBkColor
13銆佽幏鍙栦笌璁劇疆鏂囧瓧鑳屾櫙鑹詫細GetTextBkColor銆丼etTextBkColor
14銆佽幏鍙栦笌璁劇疆鏂囧瓧鍓嶆櫙鑹詫細GetTextColor銆丼etTextColor
15銆佽幏鍙栦笌璁劇疆Check錛欸etCheck銆丼etCheck,浣跨敤鍓嶉渶瑕佽緗帶浠跺睘鎬etExtendedStyle(LVS_EX_CHECKBOXES);浣挎帶浠舵湁鍕鵑夊姛鑳?br />16銆佽幏鍙栦笌璁劇疆鍥炬爣鍒楄〃錛欸etImageList銆丼etImageList
17銆佽幏鍙栦笌璁劇疆琛岄檮鍔犳暟鎹細GetItemData銆丼etItemData
18銆佽幏鍙栦笌璁劇疆鎵╁睍椋庢牸鏍峰紡錛欸etExtendedStyle銆丼etExtendedStyle
19銆佽緗琛岄変腑涓庣綉鏍肩嚎錛歋etExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
20銆佽ListCtrl鏀寔緙栬緫鐨勫姛鑳斤細
①銆佸皢灞炴т腑鐨?Edit Labels 璁劇疆涓?True錛?br />②銆佸搷搴旀帶浠剁殑 LVN_EDNLABELEDIT 娑堟伅錛屾坊鍔犲涓嬩唬鐮侊細
CString strText;
m_ListCtrl.GetEditControl()->GetWindowText(strText);
m_ListCtrl.SetItemText(pDispInfo->item.iItem, pDispInfo->item.iSubItem, strText);

21銆佸琛屽彲閫夋椂錛岃煩鍒扮涓涓閫変腑鐨勮錛屽嵆浣跨涓涓閫変腑鐨勮鍙銆?/p>

POSITION pos = pView->GetListCtrl().GetFirstSelectedItemPosition();
int nFirstSel = pView->GetListCtrl().GetNextSelectedItem(pos);
if (nFirstSel != -1)
{
pView->GetListCtrl().EnsureVisible(nFirstSel,FALSE);
}

 

鍒楄〃涓坊鍔犲浘鏍囦唬鐮侊細

UINT nIconID[] = {IDI_ICON1,IDI_ICON2,IDI_ICON3,IDI_ICON4,IDI_ICON5};//鍥炬爣ID
m_ImageList.Create(16,16,ILC_COLOR24,sizeof(nIconID)/sizeof(UINT),0);//鍒濆鍖朇ImageList綾伙紝sizeof(nIconID)/sizeof(UINT)涓哄浘鏍囦釜鏁幫紝鍚庨潰鐨?琛ㄧずCImageList鍦╯izeof(nIconID)/sizeof(UINT)涓浘鏍囦釜鏁扮殑鍩虹涓婂彲鍐嶆坊鍔犲灝戜釜鍥炬爣銆?br />m_ImageList.SetBkColor(RGB(255,255,255));//璁劇疆鑳屾櫙鑹蹭負鐧借壊
for(int i = 0; i < sizeof(nIconID)/sizeof(UINT); i++)
{
m_ImageList.Add(AfxGetApp()->LoadIcon(nIconID[i]));//灝嗗浘鏍囨坊鍔犲埌CImageList
}
m_ListCtrl.SetImageList(&m_ImageList,LVSIL_SMALL);//璁劇疆鍒楄〃鎺т歡鏄劇ず鍥炬爣

m_ListCtrl.InsertColumn(0,_T("絎?鍒?),0,100);
m_ListCtrl.InsertColumn(1,_T("絎?鍒?),0,100);
m_ListCtrl.InsertColumn(2,_T("絎?鍒?),0,100);
m_ListCtrl.InsertItem(0,_T("鏁版嵁1"),0);//鍚庨潰鐨?琛ㄧず娣誨姞CImageList涓殑絎?涓浘鏍?br />m_ListCtrl.InsertItem(1,_T("鏁版嵁2"),1);//鍚庨潰鐨?琛ㄧず娣誨姞CImageList涓殑絎?涓浘鏍?br />m_ListCtrl.InsertItem(2,_T("鏁版嵁3"),2);
m_ListCtrl.SetItemText(0,1,_T("01"));
m_ListCtrl.SetExtendedStyle(LVS_EX_CHECKBOXES);//璁劇疆鎺т歡鏈夊嬀閫夊姛鑳?br />DWORD dwStyle = m_ListCtrl.GetExtendedStyle();
m_ListCtrl.SetExtendedStyle(dwStyle|LVS_EX_FULLROWSELECT);璁劇疆鎺т歡閫変腑琛岀殑鍔熻兘

 

閬嶅巻鏂囦歡澶瑰茍鏄劇ず鏂囦歡鍚嶄笌鍥炬爣錛?/p>

CFileFind fileFind;
CString szDir("D:\\Tools");
BOOL bRet = fileFind.FindFile(szDir+"\\*.*");
while(bRet)
{
bRet = fileFind.FindNextFile();
if(fileFind.IsDots())
continue;
if(!fileFind.IsDirectory())
{
SHFILEINFO shfi;
SHGetFileInfo(fileFind.GetFilePath(),FILE_ATTRIBUTE_NORMAL,&shfi,sizeof(shfi),SHGFI_ICON|SHGFI_USEFILEATTRIBUTES|SHGFI_TYPENAME);
int nImageID = m_ImageList.Add(shfi.hIcon);
m_ListCtrl.InsertItem(m_ListCtrl.GetItemCount(),fileFind.GetFileName(),nImageID);
}
}

 

澶嶅埗鍒楄〃鍐呭

void CXXXView::OnCopydataToClipboard()
{
int nSelectCount = GetListCtrl().GetSelectedCount();
int nSelect = -1;
CString strData = _T("");
for (int i = 0; i < nSelectCount; i++)
{
//鎵懼埌閫夋嫨鐨勮鍙?br />nSelect = GetListCtrl().GetNextItem(nSelect,LVNI_ALL | LVNI_SELECTED);
//鍒楁暟
int nColumnCount = GetListCtrl().GetHeaderCtrl()->GetItemCount();
for (int j = 0; j < nColumnCount; j++)
{
CString text;
text = GetListCtrl().GetItemText(nSelect,j);
if (j != 0)
strData += "\t";
strData += text;
}
//鐢╘r\n鏉ユ帶鍒跺洖杞﹀拰鎹㈣
if (i != nSelectCount - 1)
strData += "\r\n";
}

//澶嶅埗鍒板壀璐存澘
HGLOBAL clipbordBuf = GlobalAlloc(GMEM_DDESHARE,2*(strData.GetLength() + 1));
TCHAR *pBuf = (TCHAR*)GlobalLock(clipbordBuf);
lstrcpy((LPTSTR)pBuf,(LPCTSTR)strData);
GlobalUnlock(clipbordBuf);

OpenClipboard();
EmptyClipboard();
SetClipboardData(CF_TEXT,pBuf);
CloseClipboard();
}

 

 

鍦ㄩ潪絎竴鍒椾腑娣誨姞鍥炬爣

m_List.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_SUBITEMIMAGES);

 

m_List.SetItem(0,1,LVIF_TEXT|LVIF_IMAGE,“aaa”,0,0,0,0);//鍦ㄧ涓琛岀浜屽垪鍔犲叆絎?涓浘鏍?/p>

m_List.SetItem(i,1,LVIF_TEXT|LVIF_IMAGE,szBuffer,i,0,0,0);




Mumoo 2013-04-15 17:20 鍙戣〃璇勮
]]>
CStringList鐢ㄦ硶http://www.shnenglu.com/Mumoo/archive/2013/04/15/199460.htmlMumooMumooMon, 15 Apr 2013 08:28:00 GMThttp://www.shnenglu.com/Mumoo/archive/2013/04/15/199460.htmlhttp://www.shnenglu.com/Mumoo/comments/199460.htmlhttp://www.shnenglu.com/Mumoo/archive/2013/04/15/199460.html#Feedback0http://www.shnenglu.com/Mumoo/comments/commentRss/199460.htmlhttp://www.shnenglu.com/Mumoo/services/trackbacks/199460.html 

CStringList綾繪垚鍛?/div>
鏋勯?/div>

鏋勯犱竴涓┖鐨凜String瀵硅薄鍒楄〃

棣?灝捐闂?/div>

GetHead
榪斿洖姝ゅ垪琛紙涓嶈兘鏄┖鐨勶級涓ご閮ㄧ殑鍏冪礌
GetTail 榪斿洖姝ゅ垪琛紙涓嶈兘鏄┖鐨勶級涓熬閮ㄧ殑鍏冪礌

鎿嶄綔

RemoveHead
浠庡垪琛ㄧ殑澶撮儴鍒犻櫎鍏冪礌
RemoveTail 浠庡垪琛ㄧ殑灝鵑儴鍒犻櫎鍏冪礌
AddHead 鍦ㄥ垪琛ㄧ殑澶撮儴娣誨姞涓涓厓绱狅紙鎴栬呮槸鍙︿竴涓垪琛ㄤ腑鐨勬墍鏈夊厓绱狅級錛屽嵆浜х敓涓涓柊鐨勫ご閮?
AddTail 鍦ㄥ垪琛ㄧ殑灝鵑儴娣誨姞涓涓厓绱狅紙鎴栬呮槸鍙︿竴涓垪琛ㄤ腑鐨勬墍鏈夊厓绱狅級錛屽嵆浜х敓涓涓柊鐨勫熬閮?
RemoveAll 鍒犻櫎姝ゅ垪琛ㄤ腑鐨勬墍鏈夊厓绱?

閲嶅

GetHeadPosition
榪斿洖鍒楄〃涓殑澶撮儴鍏冪礌鐨勪綅緗?
GetTailPosition 榪斿洖鍒楄〃涓熬閮ㄥ厓绱犵殑浣嶇疆
GetNext 鑾峰彇鐢ㄤ簬閲嶅鐨勪笅涓涓厓绱?
GetPrev 鑾峰彇鐢ㄤ簬閲嶅鐨勫墠涓涓厓绱?

鑾峰彇/淇敼

鑾峰彇緇欏畾浣嶇疆澶勭殑鍏冪礌
SetAt 璁劇疆緇欏畾浣嶇疆澶勭殑鍏冪礌
RemoveAt 浠庢鍒楄〃涓垹闄ょ敱浣嶇疆鎸囧畾鐨勪竴涓厓绱?

鎻掑叆

InsertBefore
鍦ㄤ竴涓粰瀹氫綅緗箣鍓嶆彃鍏ヤ竴涓柊鍏冪礌
InsertAfter 鍦ㄤ竴涓粰瀹氫綅緗箣鍚庢彃鍏ヤ竴涓柊鍏冪礌

鎼滅儲

鑾峰彇鐢卞瓧絎︿覆鍊兼寚瀹氱殑鍏冪礌鐨勪綅緗?
FindIndex 鑾峰彇鐢變竴涓粠闆跺紑濮嬬殑绱㈠紩鎸囧畾鐨勫厓绱犵殑浣嶇疆

鐘舵?/div>

榪斿洖姝ゅ垪琛ㄤ腑鐨勫厓绱犱釜鏁?
IsEmpty 嫻嬭瘯鍒楄〃鏄惁涓虹┖錛堟病鏈夊厓绱狅級

CStringList鏄疌String閾捐〃錛屽湪MFC緙栫▼涓璖TL涔嬪鐨勫彟涓閫夋嫨錛岀敤璧鋒潵鏇村姞綆媧?

鎻掑叆鏁版嵁錛欰ddTail錛堬級;AddHead()

鍒犻櫎鏁版嵁錛歊emoveAll();RemoveAt();RemoveHead();RemoveTail()

鍙栧緱鍏冪礌涓暟錛欸etCount()

鍙栧緱鏌愪釜鍏冪礌鍊鹼細GetAt(cstringList.FindIndex(index))//index涓烘暣鏁?/p>

鍙栧緱澶村熬鍏冪礌錛欸etHead() 錛汫etTail(),

閬嶅巻鏈濂界敤涓婇潰鐨勬柟寮忥紝涓嶈鐢≒OSITION鍙橀噺錛岀敤FindIndex鍙互浜嗐?/p>

鍒濆鍖栵細

 

CStringList listFileName;
listFileName.RemoveAll();

 

 

娣誨姞鎿嶄綔錛?/p>

 

listFileName.AddTail(szFullPathName);

 

閬嶅巻鎿嶄綔錛?/p>

 

POSITION rPos;
rPos = listFileName.GetHeadPosition();
while (rPos != NULL)
{
strFileName = listFileName.GetNext(rPos);
strLog += "/r/n" + strFileName;
}



Mumoo 2013-04-15 16:28 鍙戣〃璇勮
]]>MessageBox鎻愮ず璇?/title><link>http://www.shnenglu.com/Mumoo/archive/2013/04/12/199374.html</link><dc:creator>Mumoo</dc:creator><author>Mumoo</author><pubDate>Fri, 12 Apr 2013 06:51:00 GMT</pubDate><guid>http://www.shnenglu.com/Mumoo/archive/2013/04/12/199374.html</guid><wfw:comment>http://www.shnenglu.com/Mumoo/comments/199374.html</wfw:comment><comments>http://www.shnenglu.com/Mumoo/archive/2013/04/12/199374.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Mumoo/comments/commentRss/199374.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Mumoo/services/trackbacks/199374.html</trackback:ping><description><![CDATA[<p>MessageBox(NULL, "璀︾ず妗?, "鎻愮ず妗?, \<br />  MB_OK|MB_ICONWARNING|MB_SYSTEMMODAL|MB_SETFOREGROUND);</p> <p> MessageBox(NULL, "淇℃伅鎻愮ず妗?, "鎻愮ず妗?, \<br />  MB_OK|MB_ICONASTERISK|MB_SYSTEMMODAL|MB_SETFOREGROUND);<br /> MessageBox(NULL, "淇℃伅妗?, "鎻愮ず妗?, \<br />  MB_OK|MB_ICONINFORMATION|MB_SYSTEMMODAL|MB_SETFOREGROUND);</p> <p> MessageBox(NULL, "閿欒妗?, "鎻愮ず妗?, \<br />  MB_OK|MB_ICONERROR|MB_SYSTEMMODAL|MB_SETFOREGROUND);</p> <p> MessageBox(NULL, "鍙ユ焺妗?, "鎻愮ず妗?, \<br />  MB_OK|MB_ICONHAND|MB_SYSTEMMODAL|MB_SETFOREGROUND);</p> <p> MessageBox(NULL, "鎻愰棶妗?, "鎻愮ず妗?, \<br />  MB_OKCANCEL|MB_ICONQUESTION|MB_SYSTEMMODAL|MB_SETFOREGROUND);</p> <p> MessageBox(NULL, "鍋滄妗?, "鎻愮ず妗?, \<br />  MB_OK|MB_ICONSTOP|MB_SYSTEMMODAL|MB_SETFOREGROUND);</p> <p> MessageBox(NULL, "娣誨姞甯姪妗?, "鎻愮ず妗?, \<br />  MB_HELP|MB_ICONWARNING|MB_SYSTEMMODAL|MB_SETFOREGROUND);</p> <p> MessageBox(NULL, "YESNO Cancel錛屾坊鍔犻粯璁ら夐」", "鎻愮ず妗?, \<br />  MB_YESNOCANCEL|MB_ICONWARNING|MB_DEFBUTTON1|MB_SYSTEMMODAL|MB_SETFOREGROUND);</p> <p> MessageBox(NULL, "RETRYCANCEL", "鎻愮ず妗?, \<br />  MB_RETRYCANCEL|MB_ICONWARNING|MB_DEFBUTTON2|MB_SYSTEMMODAL|MB_SETFOREGROUND);</p> <p> MessageBox(NULL, "CANCELTRYCONTINUE", "鎻愮ず妗?, \<br />  MB_CANCELTRYCONTINUE|MB_ICONWARNING|MB_DEFBUTTON3|MB_SYSTEMMODAL|MB_SETFOREGROUND);</p><img src ="http://www.shnenglu.com/Mumoo/aggbug/199374.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Mumoo/" target="_blank">Mumoo</a> 2013-04-12 14:51 <a href="http://www.shnenglu.com/Mumoo/archive/2013/04/12/199374.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>JS鍏ラ棬璧勬枡綃?/title><link>http://www.shnenglu.com/Mumoo/archive/2013/04/11/199346.html</link><dc:creator>Mumoo</dc:creator><author>Mumoo</author><pubDate>Thu, 11 Apr 2013 02:02:00 GMT</pubDate><guid>http://www.shnenglu.com/Mumoo/archive/2013/04/11/199346.html</guid><wfw:comment>http://www.shnenglu.com/Mumoo/comments/199346.html</wfw:comment><comments>http://www.shnenglu.com/Mumoo/archive/2013/04/11/199346.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Mumoo/comments/commentRss/199346.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Mumoo/services/trackbacks/199346.html</trackback:ping><description><![CDATA[<div>JS綆浠嬶細 <div dir="ltr" id="imcontent"><span style="font-family: 'Segoe UI'; direction: ltr; word-wrap: break-word; color: #000000; font-size: 10pt" dir="ltr"><a title="http://www.ruanyifeng.com/blog/2011/06/birth_of_javascript.html" >http://www.ruanyifeng.com/blog/2011/06/birth_of_javascript.html</a><br /> <div dir="ltr" id="imcontent"><span style="font-family: 'Segoe UI'; direction: ltr; word-wrap: break-word; color: #000000; font-size: 10pt" dir="ltr"><a title="http://www.ruanyifeng.com/blog/2011/06/10_design_defects_in_javascript.html" >http://www.ruanyifeng.com/blog/2011/06/10_design_defects_in_javascript.html</a><br /><br />JS寮傛閫氫俊錛?br /> <div dir="ltr" id="imcontent"><span style="font-family: 'Segoe UI'; direction: ltr; word-wrap: break-word; color: #000000; font-size: 10pt" dir="ltr"><a title="http://www.ruanyifeng.com/blog/2012/12/asynchronous%EF%BC%BFjavascript.html" >http://www.ruanyifeng.com/blog/2012/12/asynchronous%EF%BC%BFjavascript.html</a><br /><br />JS瀛︿範錛?br /> <div dir="ltr" id="imcontent"><span style="font-family: 'Segoe UI'; direction: ltr; word-wrap: break-word; color: #000000; font-size: 10pt" dir="ltr"><a title="http://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html" >http://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html</a><br /><br />Node JS 瀛︿範錛?br /><a >http://www.cnblogs.com/seanlv/archive/2011/11/22/2258716.html</a><br /><a >http://nodejs.lofter.com/post/3c14e_48aee</a><br /><br /> <p><span style="color: black; font-size: 10pt">鍒囪錛氬嚱鏁版槸涓絳夊叕姘?/span> <span style="color: black; font-size: 10pt">鏄竴縐嶆暟鎹被鍨嬪彲浠ヤ綔涓哄弬鏁頒紶閫?/span> <span style="color: black; font-size: 10pt">灝卞熀鏈彲浠ョ帺杞簡</span><span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 10pt"></span></p></span></div></span></div></span></div></span></div></div><img src ="http://www.shnenglu.com/Mumoo/aggbug/199346.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Mumoo/" target="_blank">Mumoo</a> 2013-04-11 10:02 <a href="http://www.shnenglu.com/Mumoo/archive/2013/04/11/199346.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>MFC Listcontrol 浣跨敤鏂規硶http://www.shnenglu.com/Mumoo/archive/2013/01/17/197332.htmlMumooMumooThu, 17 Jan 2013 02:32:00 GMThttp://www.shnenglu.com/Mumoo/archive/2013/01/17/197332.htmlhttp://www.shnenglu.com/Mumoo/comments/197332.htmlhttp://www.shnenglu.com/Mumoo/archive/2013/01/17/197332.html#Feedback0http://www.shnenglu.com/Mumoo/comments/commentRss/197332.htmlhttp://www.shnenglu.com/Mumoo/services/trackbacks/197332.html鍘熸枃鍑哄錛?/span>http://blog.csdn.net/bqw2008/article/details/2047489
 Windows ListCtrl浣跨敤鎶宸?br />1. ListCtrl 椋庢牸
LVS_ICON: 涓烘瘡涓猧tem鏄劇ず澶у浘鏍?br />LVS_SMALLICON: 涓烘瘡涓猧tem鏄劇ず灝忓浘鏍?br />LVS_LIST: 鏄劇ず涓鍒楀甫鏈夊皬鍥炬爣鐨刬tem
LVS_REPORT: 鏄劇ずitem璇︾粏璧勬枡

鐩磋鐨勭悊瑙o細windows璧勬簮綆$悊鍣紝“鏌ョ湅”鏍囩涓嬬殑“澶у浘鏍囷紝灝忓浘鏍囷紝鍒楄〃錛岃緇嗚祫鏂?#8221;
--------------------------------------------------------------------------------
2. 璁劇疆listctrl 椋庢牸鍙婃墿灞曢鏍?LONG lStyle;
lStyle = GetWindowLong(m_list.m_hWnd, GWL_STYLE);//鑾峰彇褰撳墠紿楀彛style
lStyle &= ~LVS_TYPEMASK; //娓呴櫎鏄劇ず鏂瑰紡浣?br />lStyle |= LVS_REPORT; //璁劇疆style
SetWindowLong(m_list.m_hWnd, GWL_STYLE, lStyle);//璁劇疆style

DWORD dwStyle = m_list.GetExtendedStyle();
dwStyle |= LVS_EX_FULLROWSELECT;//閫変腑鏌愯浣挎暣琛岄珮浜紙鍙傜敤涓巖eport椋庢牸鐨刲istctrl錛?br />dwStyle |= LVS_EX_GRIDLINES;//緗戞牸綰匡紙鍙傜敤涓巖eport椋庢牸鐨刲istctrl錛?br />dwStyle |= LVS_EX_CHECKBOXES;//item鍓嶇敓鎴恈heckbox鎺т歡
m_list.SetExtendedStyle(dwStyle); //璁劇疆鎵╁睍椋庢牸

娉細listview鐨剆tyle璇鋒煡闃卪sdn
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceshellui5/html/wce50lrflistviewstyles.asp
--------------------------------------------------------------------------------
3. 鎻掑叆鏁版嵁 m_list.InsertColumn( 0, "ID", LVCFMT_LEFT, 40 );//鎻掑叆鍒?br />m_list.InsertColumn( 1, "NAME", LVCFMT_LEFT, 50 );
int nRow = m_list.InsertItem(0, “11”);//鎻掑叆琛?br />m_list.SetItemText(nRow, 1, “jacky”);//璁劇疆鏁版嵁
--------------------------------------------------------------------------------
4. 涓鐩撮変腑item 閫変腑style涓殑Show selection always錛屾垨鑰呭湪涓婇潰絎?鐐逛腑璁劇疆LVS_SHOWSELALWAYS

--------------------------------------------------------------------------------
5. 閫変腑鍜屽彇娑堥変腑涓琛?int nIndex = 0;
//閫変腑
m_list.SetItemState(nIndex, LVIS_SELECTED|LVIS_FOCUSED, LVIS_SELECTED|LVIS_FOCUSED);
//鍙栨秷閫変腑
m_list.SetItemState(nIndex, 0, LVIS_SELECTED|LVIS_FOCUSED);
--------------------------------------------------------------------------------
6. 寰楀埌listctrl涓墍鏈夎鐨刢heckbox鐨勭姸鎬?m_list.SetExtendedStyle(LVS_EX_CHECKBOXES);
CString str;
for(int i=0; i<m_list.GetItemCount(); i++)
{
if( m_list.GetItemState(i, LVIS_SELECTED) == LVIS_SELECTED || m_list.GetCheck(i))
{
str.Format(_T("絎?d琛岀殑checkbox涓洪変腑鐘舵?), i);
AfxMessageBox(str);
}
}
--------------------------------------------------------------------------------
7. 寰楀埌listctrl涓墍鏈夐変腑琛岀殑搴忓彿
鏂規硶涓錛?br />CString str;
for(int i=0; i<m_list.GetItemCount(); i++)
{
if( m_list.GetItemState(i, LVIS_SELECTED) == LVIS_SELECTED )
{
str.Format(_T("閫変腑浜嗙%d琛?), i);
AfxMessageBox(str);
}
}

鏂規硶浜岋細
POSITION pos = m_list.GetFirstSelectedItemPosition();
if (pos == NULL)
TRACE0("No items were selected!/n");
else
{
while (pos)
{
int nItem = m_list.GetNextSelectedItem(pos);
TRACE1("Item %d was selected!/n", nItem);
// you could do your own processing on nItem here
}
}
--------------------------------------------------------------------------------
8. 寰楀埌item鐨勪俊鎭?TCHAR szBuf[1024];
LVITEM lvi;
lvi.iItem = nItemIndex;
lvi.iSubItem = 0;
lvi.mask = LVIF_TEXT;
lvi.pszText = szBuf;
lvi.cchTextMax = 1024;
m_list.GetItem(&lvi);

鍏充簬寰楀埌璁劇疆item鐨勭姸鎬侊紝榪樺彲浠ュ弬鑰僲sdn鏂囩珷
Q173242: Use Masks to Set/Get Item States in CListCtrl
http://support.microsoft.com/kb/173242/en-us
--------------------------------------------------------------------------------
9. 寰楀埌listctrl鐨勬墍鏈夊垪鐨刪eader瀛楃涓插唴瀹?LVCOLUMN lvcol;
char str[256];
int nColNum;
CString strColumnName[4];//鍋囧鏈?鍒?/p>

nColNum = 0;
lvcol.mask = LVCF_TEXT;
lvcol.pszText = str;
lvcol.cchTextMax = 256;
while(m_list.GetColumn(nColNum, &lvcol))
{
strColumnName[nColNum] = lvcol.pszText;
nColNum++;
}
--------------------------------------------------------------------------------
10. 浣縧istctrl涓竴欏瑰彲瑙侊紝鍗蟲粴鍔ㄦ粴鍔ㄦ潯 m_list.EnsureVisible(i, FALSE);
--------------------------------------------------------------------------------
11. 寰楀埌listctrl鍒楁暟 int nHeadNum = m_list.GetHeaderCtrl()->GetItemCount();
--------------------------------------------------------------------------------
12. 鍒犻櫎鎵鏈夊垪 鏂規硶涓錛?br />while ( m_list.DeleteColumn (0))
鍥犱負浣犲垹闄や簡絎竴鍒楀悗錛屽悗闈㈢殑鍒椾細渚濇鍚戜笂縐誨姩銆?/p>

鏂規硶浜岋細
int nColumns = 4;
for (int i=nColumns-1; i>=0; i--)
m_list.DeleteColumn (i);
--------------------------------------------------------------------------------
13. 寰楀埌鍗曞嚮鐨刲istctrl鐨勮鍒楀彿 娣誨姞listctrl鎺т歡鐨凬M_CLICK娑堟伅鐩稿簲鍑芥暟
void CTest6Dlg::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
// 鏂規硶涓錛?br />/*
DWORD dwPos = GetMessagePos();
CPoint point( LOWORD(dwPos), HIWORD(dwPos) );

m_list.ScreenToClient(&point);

LVHITTESTINFO lvinfo;
lvinfo.pt = point;
lvinfo.flags = LVHT_ABOVE;

int nItem = m_list.SubItemHitTest(&lvinfo);
if(nItem != -1)
{
CString strtemp;
strtemp.Format("鍗曞嚮鐨勬槸絎?d琛岀%d鍒?, lvinfo.iItem, lvinfo.iSubItem);
AfxMessageBox(strtemp);
}
*/

// 鏂規硶浜?
/*
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
if(pNMListView->iItem != -1)
{
CString strtemp;
strtemp.Format("鍗曞嚮鐨勬槸絎?d琛岀%d鍒?,
pNMListView->iItem, pNMListView->iSubItem);
AfxMessageBox(strtemp);
}
*/
*pResult = 0;
}
--------------------------------------------------------------------------------
14. 鍒ゆ柇鏄惁鐐瑰嚮鍦╨istctrl鐨刢heckbox涓?娣誨姞listctrl鎺т歡鐨凬M_CLICK娑堟伅鐩稿簲鍑芥暟
void CTest6Dlg::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
DWORD dwPos = GetMessagePos();
CPoint point( LOWORD(dwPos), HIWORD(dwPos) );

m_list.ScreenToClient(&point);

LVHITTESTINFO lvinfo;
lvinfo.pt = point;
lvinfo.flags = LVHT_ABOVE;

UINT nFlag;
int nItem = m_list.HitTest(point, &nFlag);
//鍒ゆ柇鏄惁鐐瑰湪checkbox涓?br />if(nFlag == LVHT_ONITEMSTATEICON)
{
AfxMessageBox("鐐瑰湪listctrl鐨刢heckbox涓?);
}
*pResult = 0;
}
--------------------------------------------------------------------------------
15. 鍙抽敭鐐瑰嚮listctrl鐨刬tem寮瑰嚭鑿滃崟 娣誨姞listctrl鎺т歡鐨凬M_RCLICK娑堟伅鐩稿簲鍑芥暟
void CTest6Dlg::OnRclickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
if(pNMListView->iItem != -1)
{
DWORD dwPos = GetMessagePos();
CPoint point( LOWORD(dwPos), HIWORD(dwPos) );

CMenu menu;
VERIFY( menu.LoadMenu( IDR_MENU1 ) );
CMenu* popup = menu.GetSubMenu(0);
ASSERT( popup != NULL );
popup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, this );
}
*pResult = 0;
}
--------------------------------------------------------------------------------
16. item鍒囨崲鐒︾偣鏃?鍖呮嫭鐢ㄩ敭鐩樺拰榧犳爣鍒囨崲item鏃?錛岀姸鎬佺殑涓浜涘彉鍖栭『搴?娣誨姞listctrl鎺т歡鐨凩VN_ITEMCHANGED娑堟伅鐩稿簲鍑芥暟
void CTest6Dlg::OnItemchangedList1(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
// TODO: Add your control notification handler code here

CString sTemp;

if((pNMListView->uOldState & LVIS_FOCUSED) == LVIS_FOCUSED &&
(pNMListView->uNewState & LVIS_FOCUSED) == 0)
{
sTemp.Format("%d losted focus",pNMListView->iItem);
}
else if((pNMListView->uOldState & LVIS_FOCUSED) == 0 &&
(pNMListView->uNewState & LVIS_FOCUSED) == LVIS_FOCUSED)
{
sTemp.Format("%d got focus",pNMListView->iItem);
}

if((pNMListView->uOldState & LVIS_SELECTED) == LVIS_SELECTED &&
(pNMListView->uNewState & LVIS_SELECTED) == 0)
{
sTemp.Format("%d losted selected",pNMListView->iItem);
}
else if((pNMListView->uOldState & LVIS_SELECTED) == 0 &&
(pNMListView->uNewState & LVIS_SELECTED) == LVIS_SELECTED)
{
sTemp.Format("%d got selected",pNMListView->iItem);
}

*pResult = 0;
}
--------------------------------------------------------------------------------
20. listctrl鐨剆ubitem娣誨姞鍥炬爣 m_list.SetExtendedStyle(LVS_EX_SUBITEMIMAGES);
m_userlist.SetItem(..); //鍏蜂綋鍙傛暟璇峰弬鑰僲sdn
--------------------------------------------------------------------------------
21. 鍦–ListCtrl鏄劇ず鏂囦歡錛屽茍鏍規嵁鏂囦歡綾誨瀷鏉ユ樉紺哄浘鏍?緗戜笂鎵懼埌鐨勪唬鐮侊紝share
BOOL CTest6Dlg::OnInitDialog()
{
CDialog::OnInitDialog();

HIMAGELIST himlSmall;
HIMAGELIST himlLarge;
SHFILEINFO sfi;
char cSysDir[MAX_PATH];
CString strBuf;

memset(cSysDir, 0, MAX_PATH);

GetWindowsDirectory(cSysDir, MAX_PATH);
strBuf = cSysDir;
sprintf(cSysDir, "%s", strBuf.Left(strBuf.Find("file:///));

himlSmall = (HIMAGELIST)SHGetFileInfo ((LPCSTR)cSysDir,
0,
&sfi,
sizeof(SHFILEINFO),
SHGFI_SYSICONINDEX | SHGFI_SMALLICON );

himlLarge = (HIMAGELIST)SHGetFileInfo((LPCSTR)cSysDir,
0,
&sfi,
sizeof(SHFILEINFO),
SHGFI_SYSICONINDEX | SHGFI_LARGEICON);

if (himlSmall && himlLarge)
{
::SendMessage(m_list.m_hWnd, LVM_SETIMAGELIST,
(WPARAM)LVSIL_SMALL, (LPARAM)himlSmall);
::SendMessage(m_list.m_hWnd, LVM_SETIMAGELIST,
(WPARAM)LVSIL_NORMAL, (LPARAM)himlLarge);
}
return TRUE; // return TRUE unless you set the focus to a control
}

void CTest6Dlg::AddFiles(LPCTSTR lpszFileName, BOOL bAddToDocument)
{
int nIcon = GetIconIndex(lpszFileName, FALSE, FALSE);
CString strSize;
CFileFind filefind;

// get file size
if (filefind.FindFile(lpszFileName))
{
filefind.FindNextFile();
strSize.Format("%d", filefind.GetLength());
}
else
strSize = "0";

// split path and filename
CString strFileName = lpszFileName;
CString strPath;

int nPos = strFileName.ReverseFind('//');
if (nPos != -1)
{
strPath = strFileName.Left(nPos);
strFileName = strFileName.Mid(nPos + 1);
}

// insert to list
int nItem = m_list.GetItemCount();
m_list.InsertItem(nItem, strFileName, nIcon);
m_list.SetItemText(nItem, 1, strSize);
m_list.SetItemText(nItem, 2, strFileName.Right(3));
m_list.SetItemText(nItem, 3, strPath);
}

int CTest6Dlg::GetIconIndex(LPCTSTR lpszPath, BOOL bIsDir, BOOL bSelected)
{
SHFILEINFO sfi;
memset(&sfi, 0, sizeof(sfi));

if (bIsDir)
{
SHGetFileInfo(lpszPath,
FILE_ATTRIBUTE_DIRECTORY,
&sfi,
sizeof(sfi),
SHGFI_SMALLICON | SHGFI_SYSICONINDEX |
SHGFI_USEFILEATTRIBUTES |(bSelected ? SHGFI_OPENICON : 0));
return sfi.iIcon;
}
else
{
SHGetFileInfo (lpszPath,
FILE_ATTRIBUTE_NORMAL,
&sfi,
sizeof(sfi),
SHGFI_SMALLICON | SHGFI_SYSICONINDEX |
SHGFI_USEFILEATTRIBUTES | (bSelected ? SHGFI_OPENICON : 0));
return sfi.iIcon;
}
return -1;
}

--------------------------------------------------------------------------------
22. listctrl鍐呭榪涜澶ф暟鎹噺鏇存柊鏃訛紝閬垮厤闂儊 m_list.SetRedraw(FALSE);
//鏇存柊鍐呭
m_list.SetRedraw(TRUE);
m_list.Invalidate();
m_list.UpdateWindow();

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

鍒涘緩鍥懼艦鍒楄〃騫跺拰CListCtrl鍏寵仈錛?br />m_image_list.Create(IDB_CALLER2, 16, 10, RGB(192,192, 192));
m_image_list.SetBkColor( GetSysColor( COLOR_WINDOW ) );
m_caller_list.SetImageList( &m_image_list, LVSIL_SMALL);
涓烘姤琛ㄦ坊鍔?鍒楋細
char *szColumn[]={"鏄電О","IP鍦板潃","鐧婚檰鏃墮棿","鐘舵?};
int widths[]={100,98,70,55};
LV_COLUMN lvc;
lvc.mask=LVCF_FMT|LVCF_WIDTH|LVCF_TEXT|LVCF_SUBITEM;
lvc.fmt=LVCFMT_LEFT;
for(int i=0;i<4;i++) {//鎻掑叆鍚勫垪
lvc.pszText=szColumn[i];
lvc.cx=widths[i];
lvc.iSubItem=i;
m_caller_list.InsertColumn(i,&lvc);
}
涓烘姤琛ㄦ坊鍔犱袱欏癸紝浠ラ檮鍔犳柟寮忔坊鍔狅細
char* data[4];
data[0]="鎵鏈変漢";
data[1]="0.0.0.0";
data[3]="鍦ㄧ嚎";
data[2]=new char;
CTime now=CTime::GetCurrentTime();
CString temp = now.Format("%H:%M:%S");
data[2]=temp.GetBuffer(1);
LV_ITEM lvi;
lvi.mask=LVIF_TEXT|LVIF_IMAGE|LVIF_PARAM;
lvi.iSubItem=0;
lvi.pszText=(char *)data[0];
lvi.iImage = 0;
lvi.iItem=0;
m_caller_list.InsertItem(&lvi);
for (int j=0;j<4;j++) m_caller_list.SetItemText(count,j,data[j]);
count++;
lvi.iImage = 1;
lvi.iItem=count;
m_caller_list.InsertItem(&lvi);
data[0]="cherami";
data[1]="127.0.0.1";
for (int n=0;n<4;n++) m_caller_list.SetItemText(count,n,data[n]);
count++;
璁劇疆鎶ヨ〃鐨勬牱寮?br />閫変腑涓鏁磋錛?br />m_list_ctrl.SetExtendedStyle(m_list_ctrl.GetExtendedStyle()|LVS_EX_FULLROWSELECT);
緇樺埗琛ㄦ牸錛?br />m_list_ctrl.SetExtendedStyle(m_list_ctrl.GetExtendedStyle()|LVS_EX_GRIDLINES);
甯﹀閫夋錛?br />m_list_ctrl.SetExtendedStyle(m_list_ctrl.GetExtendedStyle()|LVS_EX_CHECKBOXES);
鑷姩鍒囨崲錛?br />m_list_ctrl.SetExtendedStyle(m_list_ctrl.GetExtendedStyle()|LVS_EX_TRACKSELECT);
閫夊畾涓琛岋細
璁劇疆CListCtrl鐨凷how selection always閫夐」
SetItemState (iIndex, LVIS_SELECTED|LVIS_FOCUSED, LVIS_SELECTED|LVIS_FOCUSED)
閫変腑涓涓垨澶氫釜欏圭洰鏃?浼氬彂閫丩VN_ITEMCHANGED娑堟伅錛屽彲浠ヤ嬌鐢?br />GetSelectedCount()鏂規硶寰楀埌琚夊畾鐨勯」鐨勬暟鐩?br />鐐瑰嚮鍒楀ご鐨勬秷鎭搷搴旓細
ON_NOTIFY(HDN_ITEMCLICKW, 0, ResponseFunc)
娑堟伅錛岄渶瑕佽嚜宸辨坊鍔?
鎴栬咃細
ON_NOTIFY(LVN_COLUMNCLICK, ID_yourCtrl, ResponseFunc)//鍚戝娣誨姞
鍓嶈呭悗鍝嶅簲錛屽悗鑰呭厛鍝嶅簲
鍝嶅簲鍑芥暟錛?br />ResponseFunc(NMHDR *pNMHDR, LRESULT *pResult)
鍙屽嚮CListCtrl涓殑ITEM鐨勬秷鎭槸鍙婃秷鎭嚱鏁幫細
ON_NOTIFY(NM_DBLCLK, ID_yourCtrl, ResponseFunc)
鍗曞嚮ITEM鐨勬秷鎭搷搴旓細
ON_NOTIFY(NM_CLICK, ID_yourCtrl, ResponseFunc)
ResponseFunc(NMHDR *pNMHDR, LRESULT *pResult)

HDN_ITEMCLICK 灝辨槸Header control Notify message for mouse left click on the Header control!
鑰孒DN_ITEMCLICK鏄綋List View涓瓨鍦ㄤ竴涓狧eader Contrl鏃訛紝Header Ctrl閫氱煡鐖剁獥鍙ist View鐨勶紒
CListCtrl涓殑Item琚変腑瑙﹀彂LBN_SELCHANGE(閫氳繃WM_COMMAND)娑堟伅錛?br />鍒犻櫎CListCtrl涓夊畾鐨勯」錛?br />POSITION pos;
int nIndex;
for(; pos= GetFirstSelectedItemPosition();)
{
nIndex = GetNextSelectedItem(pos);
DeleteItem(nIndex);
}
鍦↙istCtrl涓繘琛屾帓搴?br />鍒楄〃鎺т歡錛圕ListCtrl錛夌殑欏墮儴鏈変竴鎺掓寜閽紝鐢ㄦ埛鍙互閫氳繃閫夋嫨涓嶅悓鐨勫垪鏉ュ璁板綍榪涜鎺掑簭銆備絾鏄?CListCtrl騫舵病鏈夎嚜鍔ㄦ帓搴忕殑鍔熻兘錛屾垜浠渶瑕佽嚜宸辨坊鍔犱竴涓敤浜庢帓搴忕殑鍥炶皟鍑芥暟鏉ユ瘮杈冧袱涓暟鎹殑澶у皬錛屾澶栬繕闇瑕佸搷搴旀帓搴忔寜閽鐐瑰嚮鐨勬秷鎭備笅闈㈣榪頒竴涓嬪叿浣撶殑鍋氭硶銆?br />CListCtrl鎻愪緵浜嗙敤浜庢帓搴忕殑鍑芥暟錛屽嚱鏁板師鍨嬩負錛欱OOL CListCtrl::SortItems( PFNLVCOMPARE pfnCompare, DWORD dwData )銆傚叾涓涓涓弬鏁頒負鍏ㄥ眬鎺掑簭鍑芥暟鐨勫湴鍧錛岀浜屼釜鍙傛暟涓虹敤鎴鋒暟鎹紝浣犲彲浠ユ牴鎹綘鐨勯渶瑕佷紶閫掍竴涓暟鎹垨鏄寚閽堛傝鍑芥暟榪斿洖-1浠h〃絎竴欏規帓搴斿湪絎簩欏瑰墠闈紝榪斿洖1浠h〃絎竴欏規帓搴斿湪絎簩欏瑰悗闈紝榪斿洖0浠h〃涓ら」鐩哥瓑銆?br />鐢ㄤ簬鎺掑簭鐨勫嚱鏁板師褰負錛歩nt CALLBACK ListCompare(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)錛屽叾涓涓変釜鍙傛暟涓鴻皟鐢ㄨ呬紶閫掔殑鏁版嵁錛堝嵆璋冪敤SortItems鏃剁殑絎簩涓弬鏁癲wData錛夈傜涓鍜岀浜屼釜鍙傛暟涓虹敤浜庢瘮杈冪殑涓ら」鐨処temData錛屼綘鍙互閫氳繃DWORD CListCtrl::GetItemData( int nItem )/BOOL CListCtrl::SetItemData( int nItem, DWORD dwData )鏉ュ姣忎竴欏圭殑ItemData榪涜瀛樺彇銆傚湪娣誨姞欏規椂閫夌敤鐗瑰畾鐨凜ListCtrl::InsertItem涔熷彲浠ヨ緗鍊箋傜敱浜庝綘鍦ㄦ帓搴忔椂鍙兘閫氳繃璇ュ兼潵紜畾欏圭殑浣嶇疆鎵浠ヤ綘搴旇姣旇緝鏄庣‘鐨勭‘瀹氳鍊肩殑鍚箟銆?br />鏈鍚庝竴鐐癸紝鎴戜滑闇瑕佺煡閬撲粈涔堟椂鍊欓渶瑕佹帓搴忥紝瀹炵幇榪欑偣鍙互鍦ㄧ埗紿楀彛涓LVN_COLUMNCLICK娑堟伅榪涜澶勭悊鏉ュ疄鐜般?
涓嬮潰鎴戜滑鐪嬩竴涓緥瀛愶紝榪欎釜渚嬪瓙鏄竴涓淳鐢熺被錛屽茍鏀寔欏哄簭/鍊掑簭涓ょ鏂瑰紡鎺掑簭銆備負浜嗙畝鍗曟垜瀵瑰叏灞鏁版嵁榪涜鎺掑簭錛岃屽湪瀹為檯搴旂敤涓細鏈夊緇勯渶瑕佹帓搴忕殑鏁版嵁錛屾墍浠ラ渶瑕侀氳繃浼犻掑弬鏁扮殑鏂瑰紡鏉ュ憡璇夋淳搴忓嚱鏁伴渶瑕佸浠涔堟暟鎹繘琛屾帓搴忋?/font>

//鍏ㄥ眬鏁版嵁
struct DEMO_DATA
{
char szName[20];
int iAge;
}strAllData[5]={{"鐜嬫煇",30},{"寮犳煇",40},{"姝︽煇",32},{"闄堟煇",20},{"鏉庢煇",36}};
//CListCtrl媧劇敓綾誨畾涔?br />class CSortList : public CListCtrl
{
// Construction
public:
CSortList();
BOOL m_fAsc;//鏄惁欏哄簭鎺掑簭
int m_nSortedCol;//褰撳墠鎺掑簭鐨勫垪
protected:
//{{AFX_MSG(CSortList)
//}}AFX_MSG
...
};
//鐖剁獥鍙d腑鍖呭惈璇ListCtrl媧劇敓綾誨璞?br />class CSort_in_list_ctrlDlg : public CDialog
{
// Construction
public:
CSort_in_list_ctrlDlg(CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CSort_in_list_ctrlDlg)
enum { IDD = IDD_SORT_IN_LIST_CTRL_DIALOG };
CSortList m_listTest;
//}}AFX_DATA
}
//鍦ㄧ埗紿楀彛涓畾涔塋VN_COLUMNCLICK娑堟伅鏄犲皠
BEGIN_MESSAGE_MAP(CSort_in_list_ctrlDlg, CDialog)
//{{AFX_MSG_MAP(CSort_in_list_ctrlDlg)
ON_NOTIFY(LVN_COLUMNCLICK, IDC_LIST1, OnColumnclickList1)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
//鍒濆鍖栨暟鎹?br />BOOL CSort_in_list_ctrlDlg::OnInitDialog()
{
CDialog::OnInitDialog();
//鍒濆鍖朙istCtrl涓暟鎹垪琛?br />m_listTest.InsertColumn(0,"濮撳悕");
m_listTest.InsertColumn(1,"騫撮緞");
m_listTest.SetColumnWidth(0,80);
m_listTest.SetColumnWidth(1,80);
for(int i=0;i<5;i++)
{
m_listTest.InsertItem(i,strAllData[i].szName);
char szAge[10];
sprintf(szAge,"%d",strAllData[i].iAge);
m_listTest.SetItemText(i,1,szAge);
//璁劇疆姣忛」鐨処temData涓烘暟緇勪腑鏁版嵁鐨勭儲寮?br />//鍦ㄦ帓搴忓嚱鏁頒腑閫氳繃璇temData鏉ョ‘瀹氭暟鎹?br />m_listTest.SetItemData(i,i);
}
return TRUE; // return TRUE unless you set the focus to a control
}
//澶勭悊娑堟伅
void CSort_in_list_ctrlDlg::OnColumnclickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
//璁劇疆鎺掑簭鏂瑰紡
if( pNMListView->iSubItem == m_listTest.m_nSortedCol )
m_listTest.m_fAsc = !m_listTest.m_fAsc;
else
{
m_listTest.m_fAsc = TRUE;
m_listTest.m_nSortedCol = pNMListView->iSubItem;
}
//璋冪敤鎺掑簭鍑芥暟
m_listTest.SortItems( ListCompare, (DWORD)&m_listTest );
*pResult = 0;
}
//鎺掑簭鍑芥暟瀹炵幇
int CALLBACK ListCompare(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
//閫氳繃浼犻掔殑鍙傛暟鏉ュ緱鍒癈SortList瀵硅薄鎸囬拡錛屼粠鑰屽緱鍒版帓搴忔柟寮?br />CSortList* pV=(CSortList*)lParamSort;
//閫氳繃ItemData鏉ョ‘瀹氭暟鎹?br />DEMO_DATA* pInfo1=strAllData+lParam1;
DEMO_DATA* pInfo2=strAllData+lParam2;
CString szComp1,szComp2;
int iCompRes;
switch(pV->m_nSortedCol)
{
case(0):
//浠ョ涓鍒椾負鏍規嵁鎺掑簭
szComp1=pInfo1->szName;
szComp2=pInfo2->szName;
iCompRes=szComp1.Compare(szComp2);
break;
case(1):
//浠ョ浜屽垪涓烘牴鎹帓搴?br />if(pInfo1->iAge == pInfo2->iAge)
iCompRes = 0;
else
iCompRes=(pInfo1->iAge < pInfo2->iAge)?-1:1;
break;
default:
ASSERT(0);
break;
}
//鏍規嵁褰撳墠鐨勬帓搴忔柟寮忚繘琛岃皟鏁?br />if(pV->m_fAsc)
return iCompRes;
else
return iCompRes*-1;
}
鎺掑簭鏈蹇細
CListCtrl::SortItems
Example
// Sort the item in reverse alphabetical order.
static int CALLBACK
MyCompareProc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
// lParamSort contains a pointer to the list view control.
// The lParam of an item is just its index.
CListCtrl* pListCtrl = (CListCtrl*) lParamSort;
CString strItem1 = pListCtrl->GetItemText(lParam1, 0);
CString strItem2 = pListCtrl->GetItemText(lParam2, 0);
return strcmp(strItem2, strItem1);
}
void snip_CListCtrl_SortItems()
{
// The pointer to my list view control.
extern CListCtrl* pmyListCtrl;
// Sort the list view items using my callback procedure.
pmyListCtrl->SortItems(MyCompareProc, (LPARAM) pmyListCtrl);
}

If you don’t want to allow the users to sort the list by clicking on the header, you can use the style LVS_NOSORTHEADER. However, if you do want to allow sorting, you do not specify the LVS_NOSORTHEADER. The control, though, does not sort the items. You have to handle the HDN_ITEMCLICK notification from the header control and process it appropriately. In the code below, we have used the sorting function SortTextItems() developed in a previous section. You may choose to sort the items in a different manner.
Step 1: Add two member variables
Add two member variables to the CListCtrl. The first variable to track which column has been sorted on, if any. The second variable to track if the sort is ascending or descending.
int nSortedCol;
BOOL bSortAscending;

Step 2: Initialize them in the constructor.
Initialize nSortedCol to -1 to indicate that no column has been sorted on. If the list is initially sorted, then this variable should reflect that.

nSortedCol = -1;
bSortAscending = TRUE;

Step 3: Add entry in message map to handle HDN_ITEMCLICK
Actually you need to add two entries. For HDN_ITEMCLICKA and HDN_ITEMCLICKW. Do not use the class wizard to add the entry. For one, you need to add two entries whereas the class wizard will allow you only one. Secondly, the class wizard uses the wrong macro in the entry. It uses ON_NOTIFY_REFLECT() instead of ON_NOTIFY(). Since the HDN_ITEMCLICK is a notification from the header control to the list view control, it is a direct notification and not a reflected one.
ON_NOTIFY(HDN_ITEMCLICKA, 0, OnHeaderClicked)
ON_NOTIFY(HDN_ITEMCLICKW, 0, OnHeaderClicked)
Note that we specify the same function for both the notification. Actually the program will receive one or the other and not both. What notification it receives will depend on the OS. The list view control on Windows 95 will send the ANSI version and the control on NT will send the UNICODE version.
Also, note that the second argument is zero. This value filters for the id of the control and we know that header control id is zero.
Step 4: Write the OnHeaderClicked() function
Here’s where you decide what to do when the user clicks on a column header. The expected behaviour is to sort the list based on the values of the items in that column. In this function we have used the SortTextItems() function developed in a previous section. If any of the columns displays numeric or date values, then you would have to provide custom sorting for them.

void CMyListCtrl::OnHeaderClicked(NMHDR* pNMHDR, LRESULT* pResult)
{
HD_NOTIFY *phdn = (HD_NOTIFY *) pNMHDR;
if( phdn->iButton == 0 )
{
// User clicked on header using left mouse button
if( phdn->iItem == nSortedCol )
bSortAscending = !bSortAscending;
else
bSortAscending = TRUE;
nSortedCol = phdn->iItem;
SortTextItems( nSortedCol, bSortAscending );
}
*pResult = 0;
}
璁〤ListCtrl鐨凷ubItem涔熷叿鏈夌紪杈戝姛鑳?
瑕侀噸杞戒竴涓枃鏈錛岀劧鍚庡湪LVN_BEGINLABELEDIT鏃舵敼鍙樻枃鏈浣嶇疆銆?br />CInEdit m_InEdit;
if( ( GetStyle() & LVS_TYPEMASK ) == LVS_REPORT && ( m_nEditSubItem != 0 ) )
{
HWND hwndEdit;
CRect rtBound;
CString strText;
hwndEdit = (HWND)SendMessage( LVM_GETEDITCONTROL );
GetSubItemRect( pDispInfo->item.iItem, m_nEditSubItem, LVIR_LABEL, rtBound );
m_InEdit.SubclassWindow( hwndEdit );
m_InEdit.m_left = rtBound.left;
strText = GetItemText( pDispInfo->item.iItem, m_nEditSubItem );
m_InEdit.SetWindowText( strText );
}
void CInEdit::OnWindowPosChanging(WINDOWPOS FAR* lpwndpos)
{
CRect rtClient;
lpwndpos->x = m_left; // m_left鍦↙VN_BEGINLABELEDIT涓緗?br />CEdit::OnWindowPosChanging(lpwndpos);

// TODO: Add your message handler code here

}



Mumoo 2013-01-17 10:32 鍙戣〃璇勮
]]>CTime()綾?/title><link>http://www.shnenglu.com/Mumoo/archive/2012/11/27/195738.html</link><dc:creator>Mumoo</dc:creator><author>Mumoo</author><pubDate>Tue, 27 Nov 2012 08:20:00 GMT</pubDate><guid>http://www.shnenglu.com/Mumoo/archive/2012/11/27/195738.html</guid><wfw:comment>http://www.shnenglu.com/Mumoo/comments/195738.html</wfw:comment><comments>http://www.shnenglu.com/Mumoo/archive/2012/11/27/195738.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Mumoo/comments/commentRss/195738.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Mumoo/services/trackbacks/195738.html</trackback:ping><description><![CDATA[<div>緇撴瀯:<br />CTime( <div id="hvzpftn" class="spctrl"></div>銆銆int nYear, <div id="hvzpftn" class="spctrl"></div>銆銆int nMonth, <div id="hvzpftn" class="spctrl"></div>銆銆int nDay, <div id="hvzpftn" class="spctrl"></div>銆銆int nHour, <div id="hvzpftn" class="spctrl"></div>銆銆int nMin, <div id="hvzpftn" class="spctrl"></div>銆銆int nSec, <div id="hvzpftn" class="spctrl"></div>銆銆int nDST = -1<br /> //鍙傛暟nDST鎸囧畾鏄惁瀹炶澶忎護鏃訛紝涓?鏃惰〃紺哄疄琛屾爣鍑嗘椂闂達紝涓烘鏁版椂琛ㄧず瀹炶澶忎護鏃訛紝涓鴻礋鏁版椂鐢辯郴緇熻嚜鍔ㄨ綆楀疄琛岀殑鏄爣鍑嗘椂闂磋繕鏄浠ゆ椂銆? <div id="hvzpftn" class="spctrl"></div>銆銆); <br /><br /><span style="color: #0000ff">銆===================================================================== </span> <div id="hvzpftn" class="spctrl"></div><span style="color: #0000ff">銆銆</span><strong style="color: #0000ff">C++涓紝CTime 涓?CString杞崲</strong><span style="color: #0000ff"> </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CTime m_StartTime1 = CTime::GetCurrentTime(); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CString csStartTime = m_StartTime1.Format( "%Y%m%d%H%M%S" ); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆</span><strong style="color: #0000ff">涓.灝咰String杞負CTime鐨勫嚑縐嶆柟娉?/strong><span style="color: #0000ff"> </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CString timestr = "2000騫?4鏈?5鏃?; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆int a,b,c ; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆sscanf(timestr.GetBuffer(timestr.GetLength()),"%d騫?d鏈?d鏃?,&a,&b,&c); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CTime time(a,b,c,0,0,0); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆--------or - --------------------- </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CString s("2001-8-29 19:06:23"); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆int nYear, nMonth, nDate, nHour, nMin, nSec; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆sscanf(s, "%d-%d-%d %d:%d:%d", &nYear, &nMonth, &nDate, &nHour, &nMin, &nSec); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CTime t(nYear, nMonth, nDate, nHour, nMin, nSec); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆---- or ------------------------ </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CString timestr = "2000騫?4鏈?5鏃?; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆int year,month,day; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆BYTE tt[5]; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆//get year </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆memset(tt, 0, sizeof(tt)); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆tt[0] = timestr[0]; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆tt[1] = timestr[1]; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆tt[2] = timestr[2]; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆tt[3] = timestr[3]; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆year= atoi((char *)tt); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆//get month </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆memset(tt, 0, sizeof(tt)); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆tt[0] = timestr[6]; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆tt[1] = timestr[7]; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆month = atoi((char *)tt); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆//get day </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆memset(tt, 0, sizeof(tt)); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆tt[0] = timestr[10]; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆tt[1] = timestr[11]; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CTime time(year,month,day,0,0,0); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆浠庝笂闈㈡潵鐪?寰堟槑鏄句嬌鐢╯scanf()鍑芥暟鐨勪紭鍔? </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆</span><strong style="color: #0000ff">浜?灝咰Time杞崲涓篊String鐨勬柟娉?</strong><span style="color: #0000ff"> </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CTime tmSCan = CTime::GetCurrentTime(); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CString szTime = tmScan.Format("'%Y-%m-%d %H:%M:%S'"); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆榪欐牱寰楀埌鐨?/span><a style="color: #0000ff" target="_blank">鏃ユ湡</a><span style="color: #0000ff">鏃墮棿瀛楃涓插氨鏄互"2006-11-27 23:30:59"鐨勬牸寮?</span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆//鍙栧緱CTime涓殑鏃ユ湡 </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CString cstrDate = tmScan.Format("%Y-%m-%d"); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆//鍙栧緱CTime涓殑鏃墮棿 </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆CString cstrTime = tmScan.Format("%H:%M-%S"); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆sprintf榪樻湁涓笉閿欑殑琛ㄥ錛歴trftime錛屼笓闂ㄧ敤浜庢牸寮忓寲鏃墮棿瀛楃涓茬殑錛岀敤娉曡窡濂硅〃鍝ュ緢鍍忥紝涔熸槸涓澶у爢鏍煎紡鎺у埗絎︼紝鍙槸姣曠珶灝忓濞樺蹇冪粏錛屽ス榪樿璋冪敤鑰呮寚瀹氱紦鍐插尯鐨勬渶澶ч暱搴︼紝鍙兘鏄負浜嗗湪鍑虹幇闂鏃跺彲浠ユ帹鍗歌矗浠誨惂銆傝繖閲屼婦涓緥瀛愶細 </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆鏇村鏇村ソ鐨剆printf()鍑芥暟璇存槑鍙傝?銆妔pirntf錛屼綘鐭ラ亾澶氬皯錛熴?</span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆time_t t = time(0); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆//浜х敓"YYYY-MM-DD hh:mm:ss"鏍煎紡鐨勫瓧絎︿覆銆?</span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆char s[32]; </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆strftime(s, sizeof(s), "%Y-%m-%d %H:%M:%S", localtime(&t)); </span> <div style="color: #0000ff" class="spctrl"></div><span style="color: #0000ff">銆銆sprintf鍦∕FC涓篃鑳芥壘鍒頒粬鐨勭煡闊籌細CString::Format錛宻trftime鍦∕FC涓嚜鐒朵篃鏈夊ス鐨勫悓閬擄細CTime::Format錛岃繖涓瀵圭敱浜庝粠</span><a style="color: #0000ff" target="_blank">闈㈠悜瀵硅薄</a><span style="color: #0000ff">鍝噷寰楀埌浜嗚禐鍔╋紝鐢ㄤ互鍐欏嚭鐨勪唬鐮佹洿瑙変紭闆?</span><br /><span style="color: #0000ff">===================================================================== </span><br /><br />鑾峰彇鏃墮棿鍙婃椂闂村弬鏁版柟娉曪細<br /><span style="color: red">static CTime WINAPI GetCurrentTime( ); </span> <div id="hvzpftn" class="spctrl"></div><span style="color: red">銆銆鑾峰彇緋葷粺褰撳墠鏃ユ湡鍜屾椂闂淬傝繑鍥炶〃紺哄綋鍓嶆棩鏈熷拰鏃墮棿鐨凜Time瀵硅薄銆?nbsp;<br />CString Format(LPCTSTR pszFormat) const; <div id="hvzpftn" class="spctrl"></div>銆銆灝咰Time瀵硅薄涓殑鏃墮棿淇℃伅鏍煎紡鍖栦負瀛楃涓層傚弬鏁皃szFormat鏄牸寮忓寲瀛楃涓詫紝涓巔rintf涓殑鏍煎紡鍖栧瓧絎︿覆綾諱技錛屾牸寮忓寲瀛楃涓蹭腑甯︽湁%鍓嶇紑鐨勬牸寮忕爜灝嗕細琚浉搴旂殑CTime鏃墮棿鍒嗛噺浠f浛錛岃屽叾浠栧瓧絎︿細鍘熷皝涓嶅姩鐨勬嫹璐濆埌榪斿洖瀛楃涓蹭腑銆傛牸寮忕爜鍙婂惈涔夊涓嬶細 <div id="hvzpftn" class="spctrl"></div>銆銆%a錛氬懆鐨勮嫳鏂囩緝鍐欏艦寮忋? <div id="hvzpftn" class="spctrl"></div>銆銆%A錛氬懆鐨勮嫳鏂囧叏鍚嶅艦寮忋? <div id="hvzpftn" class="spctrl"></div>銆銆%b錛?鏈堢殑鑻辨枃緙╁啓褰㈠紡銆? <div id="hvzpftn" class="spctrl"></div>銆銆%B錛氭湀鐨勮嫳鏂囧叏鍚嶅艦寮忋? <div id="hvzpftn" class="spctrl"></div>銆銆%c錛?瀹屾暣鐨勬棩鏈熷拰鏃墮棿銆? <div id="hvzpftn" class="spctrl"></div>銆銆%d錛氬崄榪涘埗褰㈠紡鐨勬棩鏈燂紙01-31錛夈? <div id="hvzpftn" class="spctrl"></div>銆銆%H錛?4灝忔椂鍒剁殑灝忔椂錛?0-23錛夈? <div id="hvzpftn" class="spctrl"></div>銆銆%I錛?12灝忔椂鍒剁殑灝忔椂錛?0-11錛夈? <div id="hvzpftn" class="spctrl"></div>銆銆%j錛?鍗佽繘鍒惰〃紺虹殑涓騫翠腑鐨勭鍑犲ぉ錛?01-366錛夈? <div id="hvzpftn" class="spctrl"></div>銆銆%m錛?鏈堢殑鍗佽繘鍒惰〃紺猴紙01-12錛夈? <div id="hvzpftn" class="spctrl"></div>銆銆%M錛氬崄榪涘埗琛ㄧず鐨勫垎閽燂紙00-59錛夈? <div id="hvzpftn" class="spctrl"></div>銆銆%p錛?12灝忔椂鍒剁殑涓婁笅鍗堟爣紺猴紙AM/PM錛夈? <div id="hvzpftn" class="spctrl"></div>銆銆%S錛?鍗佽繘鍒惰〃紺虹殑縐掞紙00-59錛夈? <div id="hvzpftn" class="spctrl"></div>銆銆%U錛?涓騫翠腑鐨勭鍑犱釜鏄熸湡錛?0-51錛夛紝鏄熸湡鏃ユ槸涓鍛ㄧ殑絎竴澶┿? <div id="hvzpftn" class="spctrl"></div>銆銆%W錛?涓騫翠腑鐨勭鍑犱釜鏄熸湡錛?0-51錛夛紝鏄熸湡涓鏄竴鍛ㄧ殑絎竴澶┿? <div id="hvzpftn" class="spctrl"></div>銆銆%w錛?鍗佽繘鍒惰〃紺虹殑鏄熸湡鍑狅紙0-6錛夈? <div id="hvzpftn" class="spctrl"></div>銆銆%Y錛?鍗佽繘鍒惰〃紺虹殑騫淬?</span><br />      CTime(const SYSTEMTIME& st,int nDST = - 1) ; <div id="hvzpftn" class="spctrl"></div>銆銆浠ヤ竴涓猄YSTEMTIME緇撴瀯浣撳彉閲忔潵鏋勯燙Time瀵硅薄銆係YSTEMTIME緇撴瀯浣撲篃鏄垜浠鏃ユ湡鏃墮棿鐨勫父鐢ㄨ〃紺烘柟寮忋傚弬鏁皊t涓轟互鏈湴鏃墮棿琛ㄧず鐨凷YSTEMTIME瀵硅薄錛屽弬鏁皀DST鍚屼笂銆? <div id="hvzpftn" class="spctrl"></div>銆銆int GetYear( ) const錛? <div id="hvzpftn" class="spctrl"></div>銆銆鑾峰彇CTime瀵硅薄琛ㄧず鏃墮棿鐨勫勾浠姐傝寖鍥翠粠1970騫?鏈?鏃ュ埌2038騫達紙鍖呮嫭2038騫達級1鏈?8鏃ャ? <div id="hvzpftn" class="spctrl"></div>銆銆int GetMonth( ) const; <div id="hvzpftn" class="spctrl"></div>銆銆鑾峰彇CTime瀵硅薄琛ㄧず鏃墮棿鐨勬湀浠姐傝寖鍥翠負1鍒?2銆? <div id="hvzpftn" class="spctrl"></div>銆銆int GetDay( ) const; <div id="hvzpftn" class="spctrl"></div>銆銆鑾峰彇CTime瀵硅薄琛ㄧず鏃墮棿鐨勬棩鏈熴傝寖鍥翠負1鍒?1銆? <div id="hvzpftn" class="spctrl"></div>銆銆int GetHour( ) const; <div id="hvzpftn" class="spctrl"></div>銆銆鑾峰彇CTime瀵硅薄琛ㄧず鏃墮棿鐨勫皬鏃躲傝寖鍥翠負0鍒?3銆? <div id="hvzpftn" class="spctrl"></div>銆銆int GetMinute( ) const; <div id="hvzpftn" class="spctrl"></div>銆銆鑾峰彇CTime瀵硅薄琛ㄧず鏃墮棿鐨勫垎閽熴傝寖鍥翠負0鍒?9銆? <div id="hvzpftn" class="spctrl"></div>銆銆int GetSecond( ) const; <div id="hvzpftn" class="spctrl"></div>銆銆鑾峰彇CTime瀵硅薄琛ㄧず鏃墮棿鐨勭銆傝寖鍥翠負0鍒?9銆? <div id="hvzpftn" class="spctrl"></div>銆銆int GetDayOfWeek( ) const; <div id="hvzpftn" class="spctrl"></div>銆銆姝ゅ嚱鏁扮殑榪斿洖鍊艱〃紺篊Time瀵硅薄浠h〃鐨勬槸鏄熸湡鍑狅紝1琛ㄧず鏄懆鏃ワ紝2琛ㄧず鏄懆涓錛屼互姝ょ被鎺ㄣ?br /> <br />鎿嶄綔涓庢瘮杈冿細<br />CTime operator +(CTimeSpan timeSpan) const; <div id="hvzpftn" class="spctrl"></div>銆銆灝咰Time瀵硅薄鍜孋TimeSpan瀵硅薄鐩稿姞錛岃繑鍥炰竴涓狢Time瀵硅薄銆傚疄闄呮剰涔夊氨鏄湪涓涓椂闂寸殑鍩虹涓婃帹鍚庝竴涓椂闂撮棿闅旓紝寰楀埌涓涓柊鐨勬椂闂淬? <div id="hvzpftn" class="spctrl"></div>CTime operator -(CTimeSpan timeSpan) const; <div id="hvzpftn" class="spctrl"></div>銆銆灝咰Time瀵硅薄鍜屼竴涓狢TimeSpan鐩稿噺錛岃繑鍥炰竴涓狢Time瀵硅薄銆傚疄闄呮剰涔夊氨鏄湪涓涓椂闂寸殑鍩虹涓婃彁鍓嶄竴涓椂闂撮棿闅旓紝寰楀埌涓涓柊鐨勬椂闂淬? <div id="hvzpftn" class="spctrl"></div>CTimeSpan operator -(CTime time) const; <div id="hvzpftn" class="spctrl"></div>銆銆灝嗚CTime瀵硅薄鍜屽彟涓涓狢Time瀵硅薄鐩稿噺錛岃繑鍥炰竴涓狢TimeSpan瀵硅薄銆傚疄闄呮剰涔夊氨鏄綆椾袱涓椂闂寸偣鐨勯棿闅旓紝寰楀埌涓涓狢TimeSpan瀵硅薄銆? <div id="hvzpftn" class="spctrl"></div>CTime& operator +=(CTimeSpan span); <div id="hvzpftn" class="spctrl"></div>銆銆涓鴻CTime瀵硅薄澧炲姞涓涓猻pan琛ㄧず鐨勬椂闂撮棿闅斻? <div id="hvzpftn" class="spctrl"></div>CTime& operator -=(CTimeSpan span); <div id="hvzpftn" class="spctrl"></div>銆銆涓鴻CTime瀵硅薄鍑忓幓涓涓猻pan琛ㄧず鐨勬椂闂撮棿闅斻? <div id="hvzpftn" class="spctrl"></div>CTime& operator =(__time64_t time); <div id="hvzpftn" class="spctrl"></div>銆銆涓鴻CTime瀵硅薄璧嬩簣涓涓柊鐨勬椂闂村箋? <div id="hvzpftn" class="spctrl"></div>銆銆綆鍗曡涓嬪墿涓嬬殑鍑犱釜閲嶈澆i榪愮畻絎︼細 <div id="hvzpftn" class="spctrl"></div>銆銆operator == 錛?姣旇緝涓や釜緇濆鏃墮棿鏄惁鐩哥瓑銆? <div id="hvzpftn" class="spctrl"></div>銆銆operator != 錛?姣旇緝涓や釜緇濆鏃墮棿鏄惁涓嶇浉絳夈? <div id="hvzpftn" class="spctrl"></div>銆銆operator > 錛?姣旇緝涓や釜緇濆鏃墮棿錛屾槸鍚﹀墠涓涓ぇ浜庡悗涓涓? <div id="hvzpftn" class="spctrl"></div>銆銆operator < 錛?姣旇緝涓や釜緇濆鏃墮棿錛屾槸鍚﹀墠涓涓皬浜庡悗涓涓? <div id="hvzpftn" class="spctrl"></div>銆銆operator >= 錛?姣旇緝涓や釜緇濆鏃墮棿錛屾槸鍚﹀墠涓涓ぇ浜庣瓑浜庡悗涓涓? <div id="hvzpftn" class="spctrl"></div>銆銆operator <= 錛?姣旇緝涓や釜緇濆鏃墮棿錛屾槸鍚﹀墠涓涓皬浜庣瓑浜庡悗涓涓?br /></div><img src ="http://www.shnenglu.com/Mumoo/aggbug/195738.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Mumoo/" target="_blank">Mumoo</a> 2012-11-27 16:20 <a href="http://www.shnenglu.com/Mumoo/archive/2012/11/27/195738.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>ListControl 璁劇疆琛ㄦ牸琛岄珮涓庡瓧浣?/title><link>http://www.shnenglu.com/Mumoo/archive/2012/11/20/195410.html</link><dc:creator>Mumoo</dc:creator><author>Mumoo</author><pubDate>Tue, 20 Nov 2012 08:00:00 GMT</pubDate><guid>http://www.shnenglu.com/Mumoo/archive/2012/11/20/195410.html</guid><wfw:comment>http://www.shnenglu.com/Mumoo/comments/195410.html</wfw:comment><comments>http://www.shnenglu.com/Mumoo/archive/2012/11/20/195410.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Mumoo/comments/commentRss/195410.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Mumoo/services/trackbacks/195410.html</trackback:ping><description><![CDATA[璁劇疆琛岄珮錛?br />CImageList   m_l;   <br /> m_l.Create(1,18,TRUE|ILC_COLOR32,1,0);   <br /> SetImageList(&m_l,LVSIL_SMALL); <br /><br />璁劇疆瀛椾綋錛? <p> </p> <p>CFont m_font;</p> <p>m_font.CreatePointFont(100, "鏂板畫浣?);<br />m_listCtrl.SetFont(&m_font);</p><img src ="http://www.shnenglu.com/Mumoo/aggbug/195410.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Mumoo/" target="_blank">Mumoo</a> 2012-11-20 16:00 <a href="http://www.shnenglu.com/Mumoo/archive/2012/11/20/195410.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <a href="http://www.shnenglu.com/">青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品</a> <div style="position:fixed;left:-9000px;top:-9000px;"><font id="pjuwb"></font><button id="pjuwb"><pre id="pjuwb"></pre></button><sub id="pjuwb"></sub><tbody id="pjuwb"><var id="pjuwb"><address id="pjuwb"></address></var></tbody><listing id="pjuwb"><label id="pjuwb"><strong id="pjuwb"></strong></label></listing><wbr id="pjuwb"><small id="pjuwb"><tbody id="pjuwb"></tbody></small></wbr><ins id="pjuwb"><xmp id="pjuwb"></xmp></ins><style id="pjuwb"></style><label id="pjuwb"><em id="pjuwb"><li id="pjuwb"></li></em></label><samp id="pjuwb"></samp><menu id="pjuwb"><input id="pjuwb"></input></menu><pre id="pjuwb"><tbody id="pjuwb"><tfoot id="pjuwb"><button id="pjuwb"></button></tfoot></tbody></pre><form id="pjuwb"></form><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"><sup id="pjuwb"></sup></label></style></i><li id="pjuwb"><table id="pjuwb"><abbr id="pjuwb"></abbr></table></li><video id="pjuwb"></video><dfn id="pjuwb"></dfn><progress id="pjuwb"></progress><strong id="pjuwb"></strong><mark id="pjuwb"></mark><em id="pjuwb"></em><tbody id="pjuwb"><p id="pjuwb"><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike></p></tbody><option id="pjuwb"></option><strike id="pjuwb"></strike><u id="pjuwb"></u><td id="pjuwb"><center id="pjuwb"><tr id="pjuwb"></tr></center></td><em id="pjuwb"><mark id="pjuwb"><em id="pjuwb"><tt id="pjuwb"></tt></em></mark></em><strong id="pjuwb"></strong><wbr id="pjuwb"></wbr><s id="pjuwb"></s><strong id="pjuwb"></strong><legend id="pjuwb"></legend><nav id="pjuwb"></nav><dl id="pjuwb"><th id="pjuwb"><dl id="pjuwb"></dl></th></dl><noframes id="pjuwb"><ins id="pjuwb"></ins></noframes><font id="pjuwb"></font><strike id="pjuwb"><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"></label></style></i></strike><output id="pjuwb"></output><thead id="pjuwb"><pre id="pjuwb"></pre></thead><source id="pjuwb"></source><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem><pre id="pjuwb"><span id="pjuwb"><pre id="pjuwb"><big id="pjuwb"></big></pre></span></pre><cite id="pjuwb"><fieldset id="pjuwb"><s id="pjuwb"><rt id="pjuwb"></rt></s></fieldset></cite><big id="pjuwb"><progress id="pjuwb"><big id="pjuwb"></big></progress></big><samp id="pjuwb"><delect id="pjuwb"></delect></samp><dl id="pjuwb"></dl><strike id="pjuwb"><nav id="pjuwb"><dl id="pjuwb"><strong id="pjuwb"></strong></dl></nav></strike><tbody id="pjuwb"><b id="pjuwb"><optgroup id="pjuwb"><rp id="pjuwb"></rp></optgroup></b></tbody><em id="pjuwb"></em><xmp id="pjuwb"><blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote></xmp> <i id="pjuwb"><abbr id="pjuwb"><i id="pjuwb"><abbr id="pjuwb"></abbr></i></abbr></i><center id="pjuwb"><acronym id="pjuwb"><center id="pjuwb"></center></acronym></center><pre id="pjuwb"></pre><ul id="pjuwb"><thead id="pjuwb"></thead></ul><blockquote id="pjuwb"><pre id="pjuwb"><sup id="pjuwb"></sup></pre></blockquote><acronym id="pjuwb"></acronym><big id="pjuwb"><s id="pjuwb"></s></big><th id="pjuwb"></th><th id="pjuwb"></th><tbody id="pjuwb"></tbody><thead id="pjuwb"><strike id="pjuwb"></strike></thead><th id="pjuwb"><dl id="pjuwb"><wbr id="pjuwb"></wbr></dl></th><dl id="pjuwb"><strong id="pjuwb"></strong></dl><abbr id="pjuwb"><noframes id="pjuwb"><noscript id="pjuwb"></noscript></noframes></abbr><td id="pjuwb"><ol id="pjuwb"></ol></td><li id="pjuwb"><noscript id="pjuwb"><abbr id="pjuwb"></abbr></noscript></li><small id="pjuwb"><bdo id="pjuwb"><nav id="pjuwb"></nav></bdo></small><style id="pjuwb"></style><optgroup id="pjuwb"><table id="pjuwb"></table></optgroup><center id="pjuwb"><tr id="pjuwb"><dfn id="pjuwb"></dfn></tr></center><th id="pjuwb"></th><u id="pjuwb"></u><tfoot id="pjuwb"><legend id="pjuwb"><i id="pjuwb"></i></legend></tfoot><mark id="pjuwb"></mark><meter id="pjuwb"></meter><nav id="pjuwb"></nav><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><nobr id="pjuwb"></nobr><sub id="pjuwb"><th id="pjuwb"><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem></th></sub><thead id="pjuwb"><sub id="pjuwb"></sub></thead><ul id="pjuwb"><address id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></address></ul><dfn id="pjuwb"></dfn><pre id="pjuwb"></pre><input id="pjuwb"><cite id="pjuwb"><fieldset id="pjuwb"></fieldset></cite></input><u id="pjuwb"><form id="pjuwb"><u id="pjuwb"></u></form></u><kbd id="pjuwb"><em id="pjuwb"><mark id="pjuwb"></mark></em></kbd><tr id="pjuwb"></tr><del id="pjuwb"><form id="pjuwb"><address id="pjuwb"></address></form></del><tfoot id="pjuwb"><legend id="pjuwb"><ol id="pjuwb"><dl id="pjuwb"></dl></ol></legend></tfoot><menu id="pjuwb"><nobr id="pjuwb"><th id="pjuwb"><nobr id="pjuwb"></nobr></th></nobr></menu><fieldset id="pjuwb"></fieldset><pre id="pjuwb"><blockquote id="pjuwb"><samp id="pjuwb"></samp></blockquote></pre><xmp id="pjuwb"><sup id="pjuwb"><pre id="pjuwb"></pre></sup></xmp><span id="pjuwb"><progress id="pjuwb"></progress></span><font id="pjuwb"></font><var id="pjuwb"><abbr id="pjuwb"></abbr></var><strong id="pjuwb"><label id="pjuwb"><i id="pjuwb"><legend id="pjuwb"></legend></i></label></strong><tr id="pjuwb"><em id="pjuwb"><em id="pjuwb"><output id="pjuwb"></output></em></em></tr><thead id="pjuwb"><strike id="pjuwb"></strike></thead> <acronym id="pjuwb"></acronym><i id="pjuwb"></i><tt id="pjuwb"></tt><rt id="pjuwb"><source id="pjuwb"><rt id="pjuwb"></rt></source></rt><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike><del id="pjuwb"></del><font id="pjuwb"><output id="pjuwb"><ins id="pjuwb"><output id="pjuwb"></output></ins></output></font><kbd id="pjuwb"><tr id="pjuwb"><kbd id="pjuwb"></kbd></tr></kbd><pre id="pjuwb"><sup id="pjuwb"><delect id="pjuwb"><samp id="pjuwb"></samp></delect></sup></pre><samp id="pjuwb"></samp><track id="pjuwb"></track><tr id="pjuwb"></tr><center id="pjuwb"></center><fieldset id="pjuwb"></fieldset><i id="pjuwb"></i><td id="pjuwb"></td><rt id="pjuwb"></rt><object id="pjuwb"></object><pre id="pjuwb"><progress id="pjuwb"><sub id="pjuwb"><thead id="pjuwb"></thead></sub></progress></pre><kbd id="pjuwb"><tr id="pjuwb"><option id="pjuwb"></option></tr></kbd><output id="pjuwb"><ins id="pjuwb"></ins></output><ol id="pjuwb"></ol><source id="pjuwb"></source><strong id="pjuwb"></strong><ruby id="pjuwb"></ruby><sub id="pjuwb"><meter id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></meter></sub><pre id="pjuwb"></pre><center id="pjuwb"></center><tr id="pjuwb"><tbody id="pjuwb"><xmp id="pjuwb"><dd id="pjuwb"></dd></xmp></tbody></tr><video id="pjuwb"></video><pre id="pjuwb"></pre><form id="pjuwb"><optgroup id="pjuwb"></optgroup></form><samp id="pjuwb"></samp><kbd id="pjuwb"></kbd><strong id="pjuwb"><option id="pjuwb"></option></strong><object id="pjuwb"></object><abbr id="pjuwb"><noframes id="pjuwb"><abbr id="pjuwb"></abbr></noframes></abbr><ul id="pjuwb"><del id="pjuwb"><button id="pjuwb"><pre id="pjuwb"></pre></button></del></ul><abbr id="pjuwb"></abbr><strong id="pjuwb"><code id="pjuwb"><strong id="pjuwb"></strong></code></strong><option id="pjuwb"></option><optgroup id="pjuwb"><bdo id="pjuwb"><code id="pjuwb"></code></bdo></optgroup><mark id="pjuwb"><em id="pjuwb"><font id="pjuwb"></font></em></mark><acronym id="pjuwb"><code id="pjuwb"></code></acronym><dl id="pjuwb"></dl><em id="pjuwb"></em><object id="pjuwb"><input id="pjuwb"><object id="pjuwb"></object></input></object><output id="pjuwb"><dd id="pjuwb"></dd></output><option id="pjuwb"><button id="pjuwb"><option id="pjuwb"></option></button></option><small id="pjuwb"></small></div> <a href="http://8847m.com" target="_blank">亚洲精品中文字幕在线观看</a>| <a href="http://hfztkyhfz.com" target="_blank">久久精品一区二区三区四区</a>| <a href="http://aimashe.com" target="_blank">亚洲欧美999</a>| <a href="http://www-401313.com" target="_blank">亚洲精品久久嫩草网站秘色</a>| <a href="http://changjiucf.com" target="_blank">激情亚洲一区二区三区四区</a>| <a href="http://www18998.com" target="_blank">国外成人在线视频</a>| <a href="http://432dm.com" target="_blank">国内视频一区</a>| <a href="http://sxxawef.com" target="_blank">亚洲韩日在线</a>| <a href="http://www-369111.com" target="_blank">999亚洲国产精</a>| <a href="http://huabiseeds.com" target="_blank">午夜在线成人av</a>| <a href="http://nebnb89.com" target="_blank">久久米奇亚洲</a>| <a href="http://388123cc.com" target="_blank">亚洲三级影院</a>| <a href="http://6567ya.com" target="_blank">一区二区三区高清不卡</a>| <a href="http://jiyixitong.com" target="_blank">亚洲在线网站</a>| <a href="http://www8xvi.com" target="_blank">久久久精品性</a>| <a href="http://1392266.com" target="_blank">美女黄色成人网</a>| <a href="http://828121.com" target="_blank">亚洲国产精品免费</a>| <a href="http://75pppp.com" target="_blank">中日韩男男gay无套 </a>| <a href="http://000695.com" target="_blank">一本色道久久99精品综合 </a>| <a href="http://bixiuge.com" target="_blank">亚洲国产专区</a>| <a href="http://xiangshi888.com" target="_blank">亚洲视屏在线播放</a>| <a href="http://677968.com" target="_blank">可以看av的网站久久看</a>| <a href="http://zztto7.com" target="_blank">99精品国产99久久久久久福利</a>| <a href="http://6688zf.com" target="_blank">亚洲欧美日韩爽爽影院</a>| <a href="http://2312138.com" target="_blank">麻豆国产精品一区二区三区</a>| <a href="http://qdssqt.com" target="_blank">欧美视频在线观看免费网址</a>| <a href="http://xmt86.com" target="_blank">国模吧视频一区</a>| <a href="http://baoyu1313.com" target="_blank">一区二区三区精品国产</a>| <a href="http://www-888005.com" target="_blank">久久久天天操</a>| <a href="http://cao2014.com" target="_blank">亚洲一区二区动漫</a>| <a href="http://4254888.com" target="_blank">欧美精品一区二区三区在线看午夜</a>| <a href="http://www-65581.com" target="_blank">欧美午夜精品伦理</a>| <a href="http://www308eee.com" target="_blank">亚洲经典在线看</a>| <a href="http://www-13413.com" target="_blank">久久久精品2019中文字幕神马</a>| <a href="http://aa56789.com" target="_blank">亚洲国产精品成人</a>| <a href="http://88848885.com" target="_blank">久久激情久久</a>| <a href="http://hernameplz.com" target="_blank">国产精品久久看</a>| <a href="http://aberyco.com" target="_blank">99在线|亚洲一区二区</a>| <a href="http://www55747.com" target="_blank">久久久xxx</a>| <a href="http://110673.com" target="_blank">亚洲一区3d动漫同人无遮挡</a>| <a href="http://www456456.com" target="_blank">久久中文字幕一区</a>| <a href="http://66hhmm.com" target="_blank">国产主播在线一区</a>| <a href="http://389746.com" target="_blank">欧美一区二区大片</a>| <a href="http://sdtricoop.com" target="_blank">99国产精品国产精品久久</a>| <a href="http://778kb.com" target="_blank">美女免费视频一区</a>| <a href="http://xccp4888.com" target="_blank">国产亚洲欧美一级</a>| <a href="http://bocai4488.com" target="_blank">午夜精品福利视频</a>| <a href="http://18mmcg.com" target="_blank">亚洲图片欧洲图片av</a>| <a href="http://322033.com" target="_blank">欧美黄在线观看</a>| <a href="http://ccltb.com" target="_blank">亚洲电影激情视频网站</a>| <a href="http://51duanxinmao.com" target="_blank">久久久91精品国产</a>| <a href="http://110488.com" target="_blank">欧美一级网站</a>| <a href="http://xpj493.com" target="_blank">国产欧美综合在线</a>| <a href="http://www55avav.com" target="_blank">先锋影音国产精品</a>| <a href="http://bjayj.com" target="_blank">亚洲小视频在线</a>| <a href="http://sh738.com" target="_blank">国产精品色网</a>| <a href="http://cnxwlm.com" target="_blank">亚洲永久免费精品</a>| <a href="http://by5263.com" target="_blank">亚洲午夜久久久久久尤物 </a>| <a href="http://605799.com" target="_blank">久久久999精品</a>| <a href="http://xxxyyy168.com" target="_blank">小辣椒精品导航</a>| <a href="http://jlhao123.com" target="_blank">国产美女精品人人做人人爽</a>| <a href="http://4186a.com" target="_blank">亚洲一区久久久</a>| <a href="http://universehb.com" target="_blank">亚洲视频每日更新</a>| <a href="http://holotu.com" target="_blank">国产精品每日更新在线播放网址</a>| <a href="http://126film.com" target="_blank">亚洲天堂视频在线观看</a>| <a href="http://hjersqc.com" target="_blank">一本色道久久88亚洲综合88</a>| <a href="http://xhamtube.com" target="_blank">欧美视频你懂的</a>| <a href="http://ycpeixun.com" target="_blank">性色av一区二区三区在线观看</a>| <a href="http://qiansemf.com" target="_blank">亚洲一区二区三区在线观看视频 </a>| <a href="http://607032.com" target="_blank">午夜精品福利一区二区三区av</a>| <a href="http://yiapk.com" target="_blank">欧美视频在线不卡</a>| <a href="http://www-333304.com" target="_blank">在线亚洲精品</a>| <a href="http://4c7175.com" target="_blank">在线亚洲美日韩</a>| <a href="http://jxjx11.com" target="_blank">国产伦精品一区二区三区照片91</a>| <a href="http://cytus2wiki.com" target="_blank">午夜精品视频</a>| <a href="http://418ch.com" target="_blank">久久久国产91</a>| <a href="http://www930666.com" target="_blank">亚洲欧洲三级</a>| <a href="http://bjopl.com" target="_blank">一本色道久久综合亚洲精品高清 </a>| <a href="http://aqdw2021.com" target="_blank">欧美精品久久久久久久</a>| <a href="http://bjzgmember.com" target="_blank">亚洲免费精品</a>| <a href="http://kk66mm.com" target="_blank">亚洲欧美精品伊人久久</a>| <a href="http://4c8x.com" target="_blank">国产一区二区三区不卡在线观看</a>| <a href="http://8013sf.com" target="_blank">久久久蜜桃一区二区人</a>| <a href="http://gx2020.com" target="_blank">久久一区二区三区四区五区</a>| <a href="http://033530.com" target="_blank">亚洲精品在线视频</a>| <a href="http://am3757.com" target="_blank">亚洲免费网址</a>| <a href="http://7776701.com" target="_blank">亚洲丶国产丶欧美一区二区三区 </a>| <a href="http://jiyixitong.com" target="_blank">亚洲人成77777在线观看网</a>| <a href="http://cp88966.com" target="_blank">欧美日韩国产在线播放网站</a>| <a href="http://www353488.com" target="_blank">在线一区二区三区做爰视频网站 </a>| <a href="http://birhit.com" target="_blank">在线日韩中文</a>| <a href="http://yw6632.com" target="_blank">99国产精品国产精品久久</a>| <a href="http://kk8586.com" target="_blank">国产一区91精品张津瑜</a>| <a href="http://6623555.com" target="_blank">亚洲二区在线观看</a>| <a href="http://rosi2030.com" target="_blank">国产精品免费网站</a>| <a href="http://060607.com" target="_blank">欧美国产日韩视频</a>| <a href="http://trhht.com" target="_blank">欧美偷拍一区二区</a>| <a href="http://xilxx.com" target="_blank">久久这里有精品视频</a>| <a href="http://www524141.com" target="_blank">欧美日韩国产精品成人</a>| <a href="http://6u6uuu666.com" target="_blank">久久视频一区</a>| <a href="http://tubcup.com" target="_blank">韩国一区电影</a>| <a href="http://quintostdio.com" target="_blank">欧美xart系列在线观看</a>| <a href="http://cm168168.com" target="_blank">欧美绝品在线观看成人午夜影视 </a>| <a href="http://www201314.com" target="_blank">国产一区二区三区在线观看网站</a>| <a href="http://www3344uh.com" target="_blank">久久成年人视频</a>| <a href="http://6u6uuu666.com" target="_blank">欧美成人在线免费视频</a>| <a href="http://798814.com" target="_blank">久久国产精品黑丝</a>| <a href="http://422608.com" target="_blank">欧美日韩视频一区二区三区</a>| <a href="http://chinashixin.com" target="_blank">久久国产欧美精品</a>| <a href="http://wwwn94.com" target="_blank">欧美日韩另类视频</a>| <a href="http://xxdd51.com" target="_blank">欧美国产一区二区</a>| <a href="http://www-833898.com" target="_blank">国产亚洲精品bv在线观看</a>| <a href="http://044925.com" target="_blank">亚洲精品中文字</a>| <a href="http://80hogo.com" target="_blank">精久久久久久</a>| <a href="http://www92y.com" target="_blank">欧美一区免费视频</a>| <a href="http://hs045.com" target="_blank">香蕉精品999视频一区二区</a>| <a href="http://3597777.com" target="_blank">欧美阿v一级看视频</a>| <a href="http://551753.com" target="_blank">久久亚洲欧美国产精品乐播</a>| <a href="http://haohetour.com" target="_blank">亚洲视频一区二区免费在线观看</a>| <a href="http://anal-movie-teen.com" target="_blank">伊人久久噜噜噜躁狠狠躁</a>| <a href="http://www-6410c.com" target="_blank">一本色道久久综合狠狠躁篇怎么玩</a>| <a href="http://56myf.com" target="_blank">伊人精品在线</a>| <a href="http://hellomusiczone.com" target="_blank">久久精品国产亚洲5555</a>| <a href="http://nvpuow.com" target="_blank">久久大综合网</a>| <a href="http://ttzbdl.com" target="_blank">国产精品中文字幕欧美</a>| <a href="http://5cok.com" target="_blank">中文在线不卡</a>| <a href="http://456kp.com" target="_blank">亚洲视频网在线直播</a>| <a href="http://www227zh.com" target="_blank">噜噜噜噜噜久久久久久91</a>| <a href="http://613609.com" target="_blank">久久久最新网址</a>| <a href="http://www38ccc.com" target="_blank">国产一区二区三区在线免费观看 </a>| <a href="http://com42923.com" target="_blank">亚洲一区二区三区在线</a>| <a href="http://3233328.com" target="_blank">久久这里只有精品视频首页</a>| <a href="http://www35353.com" target="_blank">久久一区二区三区四区五区</a>| <a href="http://saox28.com" target="_blank">国产亚洲精品bt天堂精选</a>| <a href="http://wwwcc7777.com" target="_blank">亚洲一级免费视频</a>| <a href="http://92xx00.com" target="_blank">午夜国产精品视频免费体验区</a>| <a href="http://qq5621.com" target="_blank">欧美三级电影一区</a>| <a href="http://cgnwp.com" target="_blank">亚洲免费高清</a>| <a href="http://qdpetlove.com" target="_blank">亚洲午夜激情网页</a>| <a href="http://69xxx6.com" target="_blank">国产精品国产福利国产秒拍</a>| <a href="http://pnxingmei.com" target="_blank">一本色道久久99精品综合</a>| <a href="http://mmpzyw.com" target="_blank">一区二区三区精品</a>| <a href="http://yw133777.com" target="_blank">欧美性感一类影片在线播放</a>| <a href="http://hhh699.com" target="_blank">亚洲视频在线观看网站</a>| <a href="http://3344xo.com" target="_blank">欧美亚洲综合另类</a>| <a href="http://456316.com" target="_blank">国产欧美大片</a>| <a href="http://aa224.com" target="_blank">久久大香伊蕉在人线观看热2</a>| <a href="http://360695.com" target="_blank">久久aⅴ国产紧身牛仔裤</a>| <a href="http://www-94889.com" target="_blank">国产精品日本精品</a>| <a href="http://zz-777.com" target="_blank">亚洲欧美日韩国产精品</a>| <a href="http://www-888690.com" target="_blank">久久久久久97三级</a>| <a href="http://www11108b.com" target="_blank">一区视频在线</a>| <a href="http://zhouqie.com" target="_blank">欧美成人高清视频</a>| <a href="http://2312138.com" target="_blank">亚洲天堂成人</a>| <a href="http://057232.com" target="_blank">久久夜色精品国产欧美乱极品</a>| <a href="http://876769.com" target="_blank">影音先锋中文字幕一区二区</a>| <a href="http://yeepey.com" target="_blank">久久综合一区二区</a>| <a href="http://idc0558.com" target="_blank">亚洲精品一区二区三区樱花</a>| <a href="http://xingmaokeji.com" target="_blank">亚洲一区二区三区精品在线</a>| <a href="http://www-544778.com" target="_blank">国产日韩欧美中文</a>| <a href="http://114499com.com" target="_blank">久久综合电影一区</a>| <a href="http://dsjgqc.com" target="_blank">亚洲精品在线观看视频</a>| <a href="http://www-4012345.com" target="_blank">午夜在线电影亚洲一区</a>| <a href="http://sese912.com" target="_blank">狠狠色丁香婷综合久久</a>| <a href="http://www-74987.com" target="_blank">欧美大色视频</a>| <a href="http://132653.com" target="_blank">亚洲欧美另类在线观看</a>| <a href="http://ff9222.com" target="_blank">免费久久99精品国产</a>| <a href="http://hwlxwp.com" target="_blank">亚洲一区二区三区高清 </a>| <a href="http://sclddn.com" target="_blank">亚洲二区在线</a>| <a href="http://y65k.com" target="_blank">欧美日韩在线视频一区</a>| <a href="http://xxxbobba.com" target="_blank">久久精品国产久精国产思思</a>| <a href="http://zd-jm.com" target="_blank">亚洲黄网站在线观看</a>| <a href="http://sfrecq.com" target="_blank">一本一本久久</a>| <a href="http://lusaier.com" target="_blank">国内精品久久久久久久影视蜜臀</a>| <a href="http://aqdit2022.com" target="_blank">牛人盗摄一区二区三区视频</a>| <a href="http://dracotek.com" target="_blank">一区二区三区四区五区精品视频</a>| <a href="http://6966g.com" target="_blank">久久精品观看</a>| <a href="http://by2735.com" target="_blank">一区二区三区偷拍</a>| <a href="http://cechi8.com" target="_blank">国产自产女人91一区在线观看</a>| <a href="http://855821.com" target="_blank">欧美成人免费网</a>| <a href="http://430390.com" target="_blank">香蕉免费一区二区三区在线观看</a>| <a href="http://www-67499.com" target="_blank">欧美高清视频在线</a>| <a href="http://4449992.com" target="_blank">国产一区二区三区高清播放</a>| <a href="http://www524141.com" target="_blank">久久综合色婷婷</a>| <a href="http://kpd521.com" target="_blank">亚洲字幕一区二区</a>| <a href="http://jnjpsm.com" target="_blank">亚洲国产精品第一区二区三区</a>| <a href="http://cl6m.com" target="_blank">欧美伊人久久久久久久久影院</a>| <a href="http://cqjk120.com" target="_blank">91久久久久久久久</a>| <a href="http://www123720a.com" target="_blank">国模精品娜娜一二三区</a>| <a href="http://7628x.com" target="_blank">欧美精品久久天天躁</a>| <a href="http://www-ty177.com" target="_blank">久久精品最新地址</a>| <a href="http://popowq.com" target="_blank">一区二区不卡在线视频 午夜欧美不卡在 </a>| <a href="http://2424ddd.com" target="_blank">国产精品视频yy9099</a>| <a href="http://88xjj.com" target="_blank">久久综合伊人</a>| <a href="http://bocfdj.com" target="_blank">欧美中文在线字幕</a>| <a href="http://017492.com" target="_blank">在线天堂一区av电影</a>| <a href="http://gzw33.com" target="_blank">欧美国产精品</a>| <a href="http://er65.com" target="_blank">老**午夜毛片一区二区三区</a>| <a href="http://www297777.com" target="_blank">午夜国产精品影院在线观看</a>| <a href="http://5773000.com" target="_blank">日韩天堂av</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>