資源描述:
《mfc之listcontrol控件》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、listcontrol控件(一)以下未經(jīng)說明,listctrl默認view風格為report-------------------------------------------------------------------------------1.CListCtrl風格???????LVS_ICON:為每個item顯示大圖標???????LVS_SMALLICON:為每個item顯示小圖標???????LVS_LIST:顯示一列帶有小圖標的item???????LVS_REPORT:顯示item詳細資料直觀的理解:windows資源管理器,"查看
2、"標簽下的"大圖標,小圖標,列表,詳細資料--------------------------------------------------------------------------------2.設(shè)置listctrl風格及擴展風格???????LONGlStyle;???????lStyle=GetWindowLong(m_list.m_hWnd,GWL_STYLE);//獲取當前窗口style???????lStyle&=~LVS_TYPEMASK;//清除顯示方式位???????lStyle
3、=LVS_REPORT;//設(shè)置style??
4、?????SetWindowLong(m_list.m_hWnd,GWL_STYLE,lStyle);//設(shè)置style???????DWORDdwStyle=m_list.GetExtendedStyle();???????dwStyle
5、=LVS_EX_FULLROWSELECT;//選中某行使整行高亮(只適用與report風格的listctrl)dwStyle
6、=LVS_EX_GRIDLINES;//網(wǎng)格線(只適用與report風格的listctrl)dwStyle
7、=LVS_EX_CHECKBOXES;//item前生成checkbox控件m_
8、list.SetExtendedStyle(dwStyle);//設(shè)置擴展風格注:listview的style請查閱msdn??????。3.插入數(shù)據(jù)???????m_list.InsertColumn(0,"ID",LVCFMT_LEFT,40);//插入列???????m_list.InsertColumn(1,"NAME",LVCFMT_LEFT,50);???????intnRow=m_list.InsertItem(0,"11");//插入行???????m_list.SetItemText(nRow,1,"jacky");//設(shè)置數(shù)據(jù)---
9、----------------------------------------------------------4.一直選中item選中style中的Showselectionalways,或者在上面第2點中設(shè)置LVS_SHOWSELALWAYS-------------------------------------------------------------5.選中和取消選中一行intnIndex=0;//選中m_list.SetItemState(nIndex,LVIS_SELECTED
10、LVIS_FOCUSED,LVIS_SELECTE
11、D
12、LVIS_FOCUSED);//取消選中?????m_list.SetItemState(nIndex,0,LVIS_SELECTED
13、LVIS_FOCUSED);------------------------------------------------------------6.得到listctrl中所有行的checkbox的狀態(tài)m_list.SetExtendedStyle(LVS_EX_CHECKBOXES);CStringstr;for(inti=0;i14、ItemState(i,LVIS_SELECTED)==LVIS_SELECTED
15、
16、m_list.GetCheck(i)){str.Format(_T("第%d行的checkbox為選中狀態(tài)"),i);AfxMessageBox(str);}}------------------------------------------------------------7.得到listctrl中所有選中行的序號方法一:???????CStringstr;???????for(inti=0;i17、{???????????if(m_list.GetItemState(i,LVIS_SELEC