VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 937|回复: 3

[交流] VC中给列表控件CListCtrl添加复选框

[复制链接]
49_avatar_middle
在线会员 发表于 2016-4-3 14:13:52 | 显示全部楼层 |阅读模式
目的:使列表框(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));




上一篇:MFC对话框的窗口实现 窗口分割
下一篇:dll劫持源碼 自動生成
51_avatar_middle
online_admins 发表于 2016-4-5 22:16:04 | 显示全部楼层
笔记做的真心不错,我也留个记号VC中给列表控件CListCtrl添加复选框
49_avatar_middle
ico_lz  楼主| 发表于 2016-4-6 14:00:28 | 显示全部楼层
Syc 发表于 2016-4-5 22:16
笔记做的真心不错,我也留个记号

谢谢老大 !!!
26_avatar_middle
在线会员 发表于 2016-7-14 11:28:44 来自手机 | 显示全部楼层
我就笑笑不说话1468465817.23
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-5-20 09:48

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表