列表控件

来源:互联网 发布:macbook air适合编程吗 编辑:程序博客网 时间:2024/06/05 13:57
///OnInitDialog()中添加代码
//为列表控件添加列m_list.InsertColumn(0,_T("第1列") , LVCFMT_LEFT,100);m_list.InsertColumn(1,_T("第2列") ,LVCFMT_LEFT ,100);///创建图片列表m_images.Create(32 ,32 ,ILC_COLOR32 ,1,1);///在图片列表中添加一个图标m_images.Add(m_hIcon);///将图片列表关联到对话框上的列表控件m_list.SetImageList(&m_images ,LVSIL_SMALL);m_list.SetImageList(&m_images, LVSIL_NORMAL);


////CListCtrlDemoDlg头文件添加变量m_images

CImageList m_images

///“添加行”按钮的响应函数void CListCtrlDemoDlg::OnBtnAdd() {// TODO: Add your control notification handler code hereint nCount =  m_list.GetItemCount();TCHAR szText[128] = {0};_stprintf(szText , _T("第%d行第1列") , nCount + 1);m_list.InsertItem(nCount ,szText , 0);_stprintf(szText , _T("第%d行第2列") ,nCount + 1);m_list.SetItemText(nCount , 1,szText);}void CListCtrlDemoDlg::OnBtnDelete() {// TODO: Add your control notification handler code here///获取总行数int nCount = m_list.GetItemCount();//循环,从下往上删除所选的行for(int i = nCount ; i >=0 ;i--){if(m_list.GetItemState(i , LVIS_SELECTED) == LVIS_SELECTED)m_list.DeleteItem(i);}}

///组合框改变的消息响应函数

void CListCtrlDemoDlg::OnSelchangeCmbView() {// TODO: Add your control notification handler code hereDWORD dwStyle;///获得控件CComboBox *pView;pView = (CComboBox*)GetDlgItem(IDC_CMB_VIEW);///根据控件当前所选,得到列表框新的显示风格switch(pView->GetCurSel()){case 0 ://大图标dwStyle  = LVS_ICON;break;case 1://小图标dwStyle = LVS_SMALLICON;break;case 2:dwStyle = LVS_LIST;break;case 3:dwStyle = LVS_REPORT;break;default:return;}///应用新风格m_list.ModifyStyle(LVS_TYPEMASK , dwStyle);}

界面设计

列表控件ID为IDC_LIST,关联变量m_list

两个按钮控件ID为IDC_BTN_ADD和IDC_BTN_DELETE

组合框ID为IDC_CMB_VIEW,为其添加消息响应函数CBN_SELCHANGE







原创粉丝点击