目的:使列表框(CListCtrl)的每个项(item)前面有个复选,用来标明是否选中,提交数据是只选择选中的 方法:为列表框(CListCtrl)多加一个LVS_EX_CHECKBOXES风格 m_list.SetExtendedStyle(LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT|LVS_EX_CHECKBOXES); 添加的项(即“行”)的第一列总会在项目名前出现一个复选框(添加项后才能看到复选框) m_list.InsertColumn(0,"选取",LVCFMT_LEFT,50); //添加列标题 m_list.InsertColumn(1,"1",LVCFMT_LEFT,50); m_list.InsertColumn(2,"2",LVCFMT_LEFT,50); m_list.InsertColumn(3,"3",LVCFMT_LEFT,50); m_list.InsertItem(0,""); //添加项(即行标题) m_list.InsertItem(1,""); m_list.SetItemText(0,1,"sdf"); m_list.SetItemText(1,0,"sdf"); //设置项的各列数据时也可更改行标题,即行的第一列的文字 m_list.SetItemText(1,1,"sdf"); m_list.SetItemText(1,2,"sdf"); m_list.SetItemText(1,3,"sdf"); /********************************************************************************** 也可以使用以下方法设置数据 m_list.SetBkColor(RGB(255,255,255)); //设置背景 m_list.SetTextBkColor(RGB(255,255,255)); //设置list对话框的列 LV_COLUMN lvc; lvc.mask=LVCF_TEXT|LVCF_SUBITEM|LVCF_WIDTH|LVCF_FMT; lvc.fmt=LVCFMT_LEFT; lvc.iSubItem=0; lvc.pszText=_T("A"); lvc.cx=50; m_list.InsertColumn(1,&lvc); lvc.iSubItem=1; lvc.pszText=_T("B"); lvc.cx=50; m_list.InsertColumn(2,&lvc); 判定是否选项中: int nItem; //列表控制项的索引 if(TURE == GetCheck(nItem)); |
VC中给列表控件CListCtrl添加复选框
最新推荐文章于 2024-06-23 23:06:19 发布