ClistCtrl

原文出处忘了

1. 关于带 chexbox 和图像的 CListCtrl

(1)设置具有chexbox风格的属性

//设置比较站风格、、、
LONG lCompareStyle;
lCompareStyle = GetWindowLong(m_ComparePoc.m_hWnd, GWL_STYLE);//获取当前窗口style
lCompareStyle |= LVS_EX_CHECKBOXES;//item前生成checkbox控件
m_ComparePoc.SetExtendedStyle(lCompareStyle); //设置扩展风格


其中的m_ComparePoc是view为SmalIcon的clistCtrl对象。
(2)添加图像

m_imageList.Create(16, 16, ILC_COLOR16|ILC_MASK, 1, 1);
m_imageList.Add(AfxGetApp()->LoadIcon(IDI_ICON_POC));
m_ComparePoc.SetImageList(&m_imageList,LVSIL_SMALL);


其中的m_imageList为CImageList的对象IDI_ICON_POC为资源中的一个ICON的ID。
(3)检查是否被选择

m_ComparePoc.GetCheck(i)


如果被选择则会返回真,否则为假。
(4)选择
m_ComparePoc.GetCheck(i)

m_ComparePoc.GetCheck(i)


置为选择状态,如果是选择的话,此函数也不会出错。

 


2. 关于 reportreport 的 clistCtrl

第三方控件的CReportCtrl类。
(1)设置风格的属性
//设置比较内容显示风格、、、
LONG lCompareShowStyle;
lCompareShowStyle = GetWindowLong(m_CompareShow.m_hWnd, GWL_STYLE);//获取当前窗口style
lCompareShowStyle |= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrl)
lCompareShowStyle |= LVS_EX_GRIDLINES;//网格线(只适用与report风格的listctrl)
m_CompareShow.SetExtendedStyle(lCompareShowStyle); //设置扩展风格


(2)单元格背景色设置

m_CompareShow.SetItemBkColor(j,i+1,RGB(255,0,0), FALSE); 


其中的j和i+1和CListCtrl一样,都是从零开始的,FALSE表示不刷新整个控件,否则刷新整个控件。
(3)删除所有列

 m_CompareShow.DeleteAllColumns();


其中只是删除表头。
(4)删除所有的行 

 m_CompareShow.CListCtrl::DeleteAllItems();


这里调用CListCtrl的DeleteAllItems函数,而不是CReportCtrl里重载的DeleteAllItems函数
因为此函数会造成整个对话框的刷新和屏幕背景的刷新(原因未知,具体可查看源码)

CReportCtrl类http://download.csdn.net/detail/wuyuan2011woaini/5991311

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值