cchecklistbox

CCheckListBox可以实现带CheckBox的ListBox,VC6自带,头文件Afxwin.h;
但不支持托放式加入界面(再次骂下开发VC的MS人员,UI支持超级弱智!)。

有个方法比较简单,在窗口拖放一个CListBox(不会不知道是哪个吧?那就撞墙好了。),ID是IDC_LIST1,在类向导器里创建一个Control型变量,如m_List,在窗口类里将会有
CListBox m_List;
将CListBox修改成CCheckListBox;

直接这样还是不行滴!直接运行你会发现崩溃,在list的style验证那崩溃。也就是说它的style必须要有LBS_OWNERDRAWFIXED(列表中的所有项的高度都相同)或LBS_OWNERDRAWVARIABLE(列表中项的高度各不相同)两种style之一,MSDN下,Create方法里有段介绍
dwStyle
Specifies the style of the checklist box. The style must be either LBS_OWNERDRAWFIXED (all items in the list are the same height) or LBS_OWNERDRAWVARIABLE (items in the list are of varying heights).
 
郁闷的是,它及它的父类CListBox都不支持SetStyle,
这里可以采用直接修改定义的方法添加,直接全工程搜索IDC_LIST1,文件类型选 *.* ,肯定会搜索出来
LISTBOX         IDC_LIST1,160,133,153,84,LBS_OWNERDRAWFIXED |
                 LBS_HASSTRINGS | LBS_NOINTEGRALHEIGHT | NOT WS_BORDER |
                    WS_VSCROLL | WS_TABSTOP,WS_EX_STATICEDGE

直接手动加上,运行,OK!

最后步设置style比较重要,若有人知道其他设置方法,欢迎告知,先行谢过!

PS:随手所记,不成章法,勿笑!

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值