`
paulfzm
  • 浏览: 873075 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

VC CListCtrl 图标不显示的问题

    博客分类:
  • vc++
阅读更多
VC CListCtrl 图标不显示的问题

1。没有将CImageList设置为窗体成员变量导致的。

BOOL CMyDlg::OnInitDialog()

{

CImageList images;

images.Create(15, 15, ILC_COLOR16, 1, 1);


images.Add(AfxGetApp()->LoadIcon(IDR_MAINFRAME));

m_listctrl.SetImageList(&images, LVSIL_NORMAL);

m_listctrl.SetImageList(&images, LVSIL_SMALL);

m_listctrl.SetImageList(&images, LVSIL_STATE);

m_listctrl.InsertItem(0, _T("text"), 0);

}

 

2.CImageList改成了成员变量后,可以正常显示。于是接下来尝试将ICON换成Bitmap,又出现不能显示的问题,不过只是当选中某个Item的时候,他的图片不能显示。

//CREATE IMAGELIST    
     m_images.Create(15, 15, ILC_COLOR32, 3, 3);    
    // Add my bitmap, make all black pixels transparent.
     CBitmap bm;
     bm.LoadBitmap(IDB_arrow);
     m_images.Add(&bm, RGB(0, 0, 0));

 

开始怀疑是CBitmap为局部变量所致,但是不对。后来查看那个位图资源文件的属性发现是256色的,使用ILC_COLOR32有点不大合适,于是改成了ILC_COLOR16就好了。

3.以上是Debug下解决的问题,后来出现在debug版本中图标可以正常变换,但是Release版本中图标不能变化的问题。网上查贴,一般就是说这可能是由于变量没有初始化造成的(因为debug版本会进行一些初始化,而release则没有),经查,果然如此。

使用的是CListCtrl,在不同情况下要设置不同图片,使用SetItem( ... )方法,其参数是一个结构,虽然该结构有标志位指出要使用结构中的哪个参数来进行设置,但还是要将其他参数清零才行。就是这个结构没有初始化的毛病。

分享到:
评论

相关推荐

    在CListCtrl控件上演示右键菜单

    Visual C++ 6.0 编写。 1。控件CListCtrl的用法示例。包括他的四种风格:图标、小图标、列表、详细资料的示例程序。是学习ClistCtrl控件的绝对好资料。 2。右键菜单,在CListCtrl中演示右键菜单功能。

    VC使用listCtrl显示目录并有FTP功能的实例

    自己写的一个小程序,使用CListCtrl显示本地及FTP服务器上面的文件及目录信息。提供FTP链接并传输文件功能。 开发语言:VC6.0

    Grid Control Based on CListCtrl

    找了很久才找到的源码,非常强大易用,继承自VC自带的CListCtrl,原有的代码不需要任何改变即可加入,可以轻易做出多种风格的CListCtrl,包括可编辑的表格,类似COMBOX的下拉列表,带图标的,更改背景颜色和前景颜色...

    VC++常用功能实例

    37、在不使用通用文件打开对话的情况下如何显示一个文件列表 51 38、为什么旋转按钮控件看起来倒转 51 39为什么旋转按钮控件不能自动地更新它下面的编辑控件 52 40、如何用位图显示下压按钮 52 41、如何一个创建三态...

    VC中ListCtrl经验总结

    先注明一下,这里,我们用m_listctrl来表示一个CListCtrl的类对象,然后这里我们的ListCtrl都是report形式,至于其他的如什么大图标,小图标的暂时不讲,毕竟report是大众话的使用。其次,我们这里用条款一,条款二...

    vc++ 应用源码包_6

    利用Delphi的代码在VC中显示JPG图片,不使用动态连接库。 Mail_Report.zip 一个邮件报告程序。 SrcFirstProg.zip 解释了最基本的MFC程序流程。 tabcontrol_demo.zip tabcontrol_src.zip 自定义的标签控件对话框...

    VC++自定义的彩色CListCtrl组件

    VC++自定义的彩色CListCtrl组件,把控件的颜色变成彩色,颜色自定义,另外可排列图标的方式,总之来说,这些小技巧还是值得学习下的。 运行环境:Windows/Visual C/C++

    ListCtrl单元格的闪动效果

    重绘的CListCtrl,具有单元格的闪动效果。用于提示信息很不错。附源代码。

    自定义表格控件

    继承自VC自带的CListCtrl,原有的代码不需要任何改变即可加入,可以轻易做出多种风格的CListCtrl,包括可编辑的表格,类似COMBOX的下拉列表,带图标的,更改背景颜色和前景颜色等,甚至有日期选项框,而且可以单独...

    Visual c++案例开发集锦

    CListCtrl 控件的应用 IP Address控件编辑IP地址 Slider控件的应用 动态创建文本框控件 改变控件的字体颜色 用CColorDialog类选择颜色 用CFileDialog类选择文件 用静态标签控件显示当前时间 字符串的查找和提取 第四...

    VC++常用的共用函数100多页

    37、在不使用通用文件打开对话的情况下如何显示一个文件列表 51 38、为什么旋转按钮控件看起来倒转 51 39为什么旋转按钮控件不能自动地更新它下面的编辑控件 52 40、如何用位图显示下压按钮 52 41、如何一个创建三态...

    vc++ 应用源码包_1

    利用Delphi的代码在VC中显示JPG图片,不使用动态连接库。 Mail_Report.zip 一个邮件报告程序。 SrcFirstProg.zip 解释了最基本的MFC程序流程。 tabcontrol_demo.zip tabcontrol_src.zip 自定义的标签控件对话框...

    vc++ 应用源码包_2

    利用Delphi的代码在VC中显示JPG图片,不使用动态连接库。 Mail_Report.zip 一个邮件报告程序。 SrcFirstProg.zip 解释了最基本的MFC程序流程。 tabcontrol_demo.zip tabcontrol_src.zip 自定义的标签控件对话框...

    vc++ 应用源码包_3

    利用Delphi的代码在VC中显示JPG图片,不使用动态连接库。 Mail_Report.zip 一个邮件报告程序。 SrcFirstProg.zip 解释了最基本的MFC程序流程。 tabcontrol_demo.zip tabcontrol_src.zip 自定义的标签控件对话框...

    vc++ 应用源码包_5

    利用Delphi的代码在VC中显示JPG图片,不使用动态连接库。 Mail_Report.zip 一个邮件报告程序。 SrcFirstProg.zip 解释了最基本的MFC程序流程。 tabcontrol_demo.zip tabcontrol_src.zip 自定义的标签控件对话框...

    Visual C++案例开发集锦

    CListCtrl 控件的应用 IP Address控件编辑IP地址 Slider控件的应用 动态创建文本框控件 改变控件的字体颜色 用CColorDialog类选择颜色 用CFileDialog类选择文件 用静态标签控件显示当前时间 字符串的查找和提取 第四...

    VC++ 专家指导.doc

    (41) 在不使用通用文件打开对话的情况下如何显示一个文件列表 35 (42) 为什么旋转按钮控件看起来倒转 36 (43) 为什么旋转按钮控件不能自动地更新它下面的编辑控件 37 (44) 如何用位图显示下压按钮 37 (45)...

    vc++ 开发实例源码包

    内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、文件与文件夹属性操作、文件与文件夹系统操作、系统控制操作、程序...

    类似画图板的小程序-windows

    然后,选择不同工具时展现出工具的样式,比如选择“直线”时列出可用的直线宽度样式,该功能通过在ToolBar上放一个CListCtrl实现,当前的工具样式通过图标的方式展现,效果和画图板的类似。 5、 颜料盒: 从...

Global site tag (gtag.js) - Google Analytics