1、打开兑换框,把List control 拖动到对话框上,并把控件ID命名。
2、打开类向导
3、给list control增加对应的控件变量
4、在对话框的初始化函数OnInitDialog()里面,初始化list contro盟敢势袂l控件,设置表头,插入数据。具体代码如下: LONG lStyle; lStyle = GetWindowLong(m_list.m_hWnd, GWL_STYLE);//获取当前窗口style lStyle &= ~LVS_TYPEMASK; //清除显示方式位 lStyle |= LVS_REPORT; //设置style SetWindowLong(m_list.m_hWnd, GWL_STYLE, lStyle);//设置style DWORD dwStyle = m_list.GetExtendedStyle(); dwStyle |= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrl) dwStyle |= LVS_EX_GRIDLINES;//网格线(只适用与report风格的listctrl) //dwStyle |= LVS_EX_CHECKBOXES;//item前生成checkbox控件 m_list.SetExtendedStyle(dwStyle); //设置扩展风格 m_list.InsertColumn(0, "ID", LVCFMT_LEFT, 40);//插入列 m_list.InsertColumn(1, "NAME", LVCFMT_LEFT, 50); int nRow = m_list.InsertItem(0, "1");//插入行 m_list.SetItemText(nRow, 1, "张三");//设置数据
5、初始化后,程序演示结果如下。
6、接着 演示如何点击获取list控件内数据的示例。先增加双击控件的消息映射函数。
7、消息映射函数中增加如下代码: NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR; if 烫喇霰嘴(pNMListView->iItem != -1) { CString strtemp; strtemp.Format("单击的是第%d行第%d列",pNMListView->iItem, pNMListView->iSubItem); CString temp1 = m_list.GetItemText(pNMListView->iItem, pNMListView->iSubItem); AfxMessageBox(strtemp + ", " + temp1); }
8、最终效果如下图: