VC中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比较重要,若有人知道其他设置方法,欢迎告知,先行谢过!

时间: 2024-09-15 15:20:49

VC中CCheckListBox使用注意事项的相关文章

VC中的界面美化

本文专题讨论VC中的界面美化,适用于具有中等VC水平的读者.读者最好具有以下VC基础: 1. 大致了解MFC框架的基本运作原理: 2. 熟悉Windows消息机制,熟悉MFC的消息映射和反射机制: 3. 熟悉OOP理论和技术: 本文根据笔者多年的开发经验,并结合简单的例子一一展开,希望对读者有所帮助.  正文1. 美化界面之开题篇相信使用过<金山毒霸>.<瑞星杀毒>软件的读者应该还记得它们的精美界面:     图1 瑞星杀毒软件的精美界面程序的功能如何如何强大是一回事,它的用户界面

VC++中的char,wchar_t,TCHAR(转载)

VC++中的char,wchar_t,TCHAR 大家一起做一个项目,经常发现有的人爱用strcpy等标准ANSI函数,有的人爱用_tXXXX函数,这个问题曾经搞的很混乱.为了统一,有必要把来龙去脉搞清楚. 为了搞清这些函数,就必须理请几种字符类型的写法.char就不用说了,先说一些wchar_t.wchar_t是Unicode字符的数据类型,它实际定义在<string.h>里: typedef unsigned short wchar_t;不能使用类似 strcpy这样的ANSI C字符串函

源码-求教一个vc中float转化的问题!

问题描述 求教一个vc中float转化的问题! 50C buffer[0] = 0xc6;buffer[1] = 0xc3;buffer[2] = 0x90;buffer[3] = 0x30; 哪位大神能给了源码吗,谢谢了!!不会搞,急死了! 解决方案 请教一个VC问题 解决方案二: 数据的在计算机中不是用二进制表示的嘛,4位16进制就需要用32位二进制来表示:然后低字节存地位,高字节存高位,也就是传说中的"小端模式":这个不需要什么源码,理解到了就行:理解不到就去看书 解决方案三:

在VC中使用MATLAB C/C++函数库

MATLAB广泛应用于线性代数.自动控制理论.数理统计.数字信号处理.时间序列分析.动态系统仿真等领域.因此如果在VC中对MATLAB进行调用将大大减少编程的工作量.保证程序的准确性,并且继承了VC++强大的功能,提高开发效率,本文将介绍了在VC中使用MATLAB函数库的具体步骤: 在VC中建立一个项目后: 1.设置: 添加路径: 在project-settings-c/C++-category:-preprocessor-Additional include directories:栏目中添加

VC++中利用MSXML解析XML文档

c++|xml 四.程序实现 下面通过一个具体的实例来说明在VC++中如何利用MSXML解析XML文档. (1)源XML文档(xmlfile.xml)如下: <?xml version="1.0" encoding="GB2312"?> <Device id="10041" name="设备1"> <Type>13</Type> <TypeName>保护</Ty

外链发布过程中要注意的事项

  论坛中每天都有不同的站长们,在不停的灌水发帖,每天忙碌着就是为了那区区几条外链,外链的建设也成为网站优化过程中需要注意的,对站长们来说外链的平台也是很多的,但是不同的平台得到的外链效果都是不一样的,搜索引擎在一更新的时候,很都外链都会掉,这也提醒站长们在外链建设中,需要注意高外链的来源,具体的外链发布过程中需要注意哪些事项呢? 第一:选择平台权重.现在能发布外链的平台真的是很多的,对于站长们来说,去这些平台花费时间,就是要它的外链能有效果,没效果的没权重的平台,站长们可以忽略不计了.这些平台

VC中的图片单击事件Picture Control

VC 中Picture Control 添加图片和单击事件,比C#等语言稍微较麻烦 一.添加图片 1.在窗体添加Picture Control控件 2.代码添加图片 HBITMAP hBmpWSUS = (HBITMAP)LoadImage (AfxGetResourceHandle(), MAKEINTRESOURCE(IDB_BITMAP_WSUS), IMAGE_BITMAP, 0, 0, LR_LOADMAP3DCOLORS); // 关联图片ID HBITMAP hBmpVIRUS =

VC中的图象打印问题

我终于完成了对图象的打印操作,在此,将其全部奉上,以满足与我有同样经历的朋友的需要.在这里,我要特别感谢VCKbase中的LiuRong! 另外,由于这是我的第一篇文章 ,难免有不尽人意之处,欢迎大家提出批评和建议,先谢谢啦. VC中的图象打印一般有两种方法: 一.选定打印设备环境后,用DrawState可以将图象打印出来,这可以用于资源中图象 的打印输出,比较简单,不再多说. 二.窗口内容的打印,这是本文的重点,也是我遇到的最大的问题,下面我主要介绍 这种打印: 1.工程简单介绍 建立一个基于

VC++中的自定义消息

在VC++中想加入自定义消息,以下方法可供参考 -- 1 首先定义消息:例如 define WM_MYMESSAGE (WM_USER+100) 2 在.H文件中,加入消息响应函数,如:LONG OnMyMessage(WPARAM w,LPARAM l); 该函数有规定的格式:LONG Function_Name(WPARAM w,LPARAM l); 3 加入消息响应宏 在响应该消息的类中,在消息响应块中, BEGIN_MESSAGE_MAP(CAboutDlg, CDialog) //{{