MFC入门示例之列表框(ListControl)

初始化:

1     //初始化列表
2     m_list.ModifyStyle(LVS_TYPEMASK, LVS_REPORT);    //报表样式
3     m_list.InsertColumn(0, TEXT("第一列"),LVCFMT_LEFT,120);//增加一列,左对齐,120px
4     m_list.InsertColumn(1, TEXT("第二列"),LVCFMT_LEFT,120);//增加一列,左对齐,120px
5     m_imageList.Create(IDB_BITMAP1, 32, 1, RGB(255, 0, 255));//创建图标,设定紫色为透明色
6     m_list.SetImageList(&m_imageList, LVSIL_NORMAL);//大图标
7     m_list.SetImageList(&m_imageList, LVSIL_SMALL);//小图标

点击事件

 1 //添加按钮
 2 void CMFCApplication7Dlg::OnBnClickedButtonAdd()
 3 {
 4     int nCount = m_list.GetItemCount();//获取列表中数据项个数
 5     CString strText;
 6     strText.Format(TEXT("第%d行,第1列"), nCount + 1);//要插入的数据
 7     m_list.InsertItem(nCount, strText,0);            //插入行
 8     strText.Format(TEXT("第%d行,第2列"), nCount + 1);//要插入的数据
 9     m_list.SetItemText(nCount, 1, strText);
10 }
11 
12 //删除按钮
13 void CMFCApplication7Dlg::OnBnClickedButtonDel()
14 {
15     int nCount = m_list.GetItemCount();//获取列表中数据项个数
16     for (int i = nCount; i >= 0; i--) {
17         if (m_list.GetItemState(i, LVIS_SELECTED) == LVIS_SELECTED) {
18             //如果某一行被选中,删除
19             m_list.DeleteItem(i);
20         }
21     }
22 }
23 
24 //组合框选项被改变
25 void CMFCApplication7Dlg::OnCbnSelchangeComboStyle()
26 {
27     DWORD dwStyle;
28     CComboBox *pCombo;
29     pCombo = (CComboBox*)GetDlgItem(IDC_COMBO_STYLE);
30     switch (pCombo->GetCurSel()) {
31     case 0:
32         dwStyle = LVS_ICON;
33         break;
34     case 1:
35         dwStyle = LVS_SMALLICON;
36         break;
37     case 2:
38         dwStyle = LVS_LIST;
39         break;
40     case 3:
41         dwStyle = LVS_REPORT;
42         break;
43     default:break;
44     }
45     m_list.ModifyStyle(LVS_TYPEMASK, dwStyle);
46 } 

猜你喜欢

转载自www.cnblogs.com/runtimeexception/p/9212191.html