MFC ImageList控件的使用方法

CImagList 使用详解 2009-09-26 21:44   图像列表控件(CImageList)是相同大小图像的一个集合,每个集合中均以0为图像的索引序号基数,(可以把这些图标看成是以数组方式存储的),图像列表通常由大图标或位图构成,其中包含透明位图模式(实际上,所有的再一个图像列表中的图标都被存储在一个屏幕设备的位图中)。可以利用windows API来绘制、建立和删除图像,并能实现增加、删除、替换和拖动图像邓 阅读详情

Imagelist控件

ImageList     控件包含     ListImage     对象的集合,该集合中的每个对象都可以通过其索引或关键字被引用。ImageList     控件不能独立使用,只是作为一个便于向其它控件提供图象的资料中心。   
    
    语法   
    
    ImageList   
    
    说明   
    
    ImageList     控件的作用象图像的储藏室,同时,它需要第二个控件显示所储存的图像。第二个控件可以是任何能显示图像     Picture     对象的控件,也可以是特别设计的、用于绑定     ImageList     控件的     Windows     通用控件之一。这些控件包括ListView、ToolBar、TabStrip、Header、ImageCombo、和     TreeView     控件。为了与这些控件一同使用     ImageList,必须通过一个适当的属性将特定的     ImageList控件绑定到第二个控件。对于     ListView     控件,必须设置其     Icons     和     SmallIcons     属性为     ImageList     控件。对于     TreeView、TabStrip、ImageCombo、和     Toolbar     控件,必须设置     ImageList     属性为     ImageList     控件。   
    
    在设计时,可以用“ImageList     控件属性”对话框的“图像”选项卡来添加图象。在运行时,可以用     Add     方法给     ListImages     集合添加图象。   
    
    对于     Windows     通用控件来说,设计时可以用“自定义属性”对话框来指定一个     ImageList。运行时也可以用     ImageList     属性指定一个     ImageList     控件,就象下面的例子所述的那样,它可以设置     TreeView     控件的:   
    
    TreeView1.ImageList     =     ImageList1       '指定     ImageList     属性   
    重点         当与     Windows     通用控件一起使用     ImageList     控件时,在将它绑定到第二个控件之前,按照您希望的顺序将全部需要的图像插入到     ImageList。一旦     ImageList     被绑定到第二个控件     ,您就不能再删除图像了,并且也不能将图像插入到     ListImages     集合中间。但是您可以在集合的末尾添加图像。   
    
    一旦     ImageList     与某个     Windows     通用控件相关联,就可以在过程中用     Index     属性或     Key     属性的值来引用     ListImage     对象了。下面的示例设置     TreeView     控件的第三个     Node     对象的     Image     属性为     ImageList     控件中的第一个     ListImage     对象:   
    
    '使用     ImageList1     的     Index     属性值。   
    TreeView1.Nodes(3).Image     =     1   
    '或者使用     Key     属性值。   
    TreeView1.Nodes(3).Image     =     "image     1"         '假定     Key     值为     "image     1。"   
    
    要与其它控件(不能绑定到     ImageList     控件的控件)一起使用     ImageList     控件,将第二个控件的     Picture属性赋值给     ImageList     控件中的任何一个图像的     Picture对象。例如,下面的代码把     ListImages     集合中的第一个     ListImage     对象的     Picture     对象赋值给一个新创建的     StatusBar     面板的     Picture     属性:   
    
    Dim     pnlX     As     Panel   
    Set     pnlX     =     StatusBar1.Panels.Add()     '添加一个     Panel     对象。   
    Set     pnlX.Picture     =     ImageList1.ListImages(1).Picture     '设置图片。   
    
    注意         将图像赋值给     Picture     对象时,必须使用     Set     语句。   
    
    可以插入任何大小的图像到     ImageList     控件中。然而,由第二个控件显示的图像大小是由一个因素决定的:第二个控件是否也是一个绑定到     ImageList     控件的     Windows     通用控件。   
    
    当     ImageList     控件被绑定到另一个     Windows     通用控件时,不同大小的图片可以被添加到控件中,但是在关联的     Windows     通用控件中显示的图象大小将受到添加到     ImageList     图像中的第一个图象大小的约束。例如,如果您添加一个     16     ×     16像素的图像到     ImageList     控件中,然后将     ImageList     绑定到     TreeView     控件(用     Node     对象显示),所有存储于     ImageList     控件中的图像将以     16     ×     16像素显示,即使它们的尺寸是更大或更小。   
    
    此外,如果您用     Picture     对象显示图像,则存储在     ImageList     控件中的任何图像都将以图像最初的大小显示,无论它的尺寸是更大还是更小。   
    发行注意         ImageList     控件是     ActiveX     控件组的一部分,该控件组可以在文件     MSCOMCTL.OCX     中找到。若是在应用程序中使用     ImageList     控件,必须把文件     MSCOMCTL.OCX     添加到工程中。在分行应用程序时,应把文件     MSCOMCTL.OCX     安装到     Microsoft     Windows     的     System     目录或者     System32     目录下。关于如何把一个     ActiveX     控件添加到工程中去的详细内容,请参阅《程序员指南》。

 
MFC高级控件之 图像列表控件 图像列表控价与其它控件不同,不能从工具箱的控件面板添加到程序界面中。图像列表控件是一个类:CImageList。要使用该控件,需通过编辑代码实现。该控件用以存储大小相同的一组图像。常使用图像列表控件来为工具条、树状控件、列表控价等的内容设置图标。当然也用可以图像列表将图像绘制到程序中。本文将详细介绍图像列表控件,并以一个的实例演示如何使用图像列表。 阅读详情

相关推荐

430单片机实现三人投票表决器_基于单片机的五人表决器的设计

姚海云+马野摘要:本设计利用51单片机,按键开关模块,数码管显示模块和LED模块来实现一个简单的五人表决器的功能。按键开关模块中的键2~键6表示五个人,由5个人来投票,当同意的票数大于或者等于3人时,数码管显示同意的人数,说明表决通过。当表决的人数小于3时,数码管显示同意的人数。关键词:表决器;单片机;流水灯;数码管;矩阵键盘;时钟中图分类号:TP391 文献标识码:A 文章编号:1009-304...

weixin_33277215的博客 2558

VC MFC列表视图(CListCtrl)控件

列表视图控件 图标风格 CListCtrl类里要了解的函数 SetImageList为列表控件关联一个图像列表 InsertItem插入一项 GetSelectionMark获取选中项的索引 GetItemText根据项索引获取项文本内容 首先往工程里引入七个图标,接着在对话框里添加一个列表视图控件,然后为控件关联一个变量CListCtrl,再往对话框类添加一个变量CImageLis

7775

从零到一:基于Esp32与LVGL的ST7789屏幕驱动全流程实战

本文详细介绍了基于Esp32与LVGL的ST7789屏幕驱动全流程实战,包括环境准备、驱动文件改造、硬件接口配置、LVGL集成与优化等关键步骤。通过VSCode+ESP-IDF开发环境,读者可以快速掌握SPI模式下的屏幕驱动开发,解决常见问题如颜色错乱、画面撕裂等,并实现LVGL的高效集成与性能优化。

weixin_33725722的博客 711

列表视图控件

设计登陆窗口 首先创建一个图像列表,并通过SetImageList方法将列表视图控件和图像列表关联到一起。 CImageList* SetImageList(CImageList* pImageList,int nImageList); pImageList:标识图像列表指针。 nImageList:标识图像列表类型。 LVSIL_NORMAL:图像列表具有大图标 LVSIL...

dengtangxie6311的博客 203

时钟门控ICG单元的timing问题

本文探讨了数字IC设计中门控时钟(ICG)的时序收敛问题,重点分析了ICG单元在setup时序检查中易出现违例的原因及优化方法。文章指出,由于ICG单元不在时钟树平衡范围内,其时钟路径延迟通常小于后续寄存器,导致setup时序难以满足。提出的解决方案包括:1)将ICG尽量靠近受控寄存器放置;2)使用set_clock_gating_check命令加强时序约束;3)在布局阶段设置负时钟延迟;4)CTS阶段设置插入延迟。同时强调set_clock_gating_check命令对ICG单元同样有效,并介绍了ICG

u011075954的专栏 1112

科研党必备:Zotero+Deepseek 打造AI文献阅读助手(附详细插件配置指南)

本文详细介绍了如何利用Zotero和Deepseek打造AI文献阅读助手,提升科研效率。从Zotero基础安装到中文文献处理插件茉莉花的配置,再到Deepseek API的集成与模型选择策略,全面覆盖了AI辅助阅读的关键环节。特别适合需要高效管理海量文献的科研工作者,显著提升文献筛选和分析速度。

backprop5master的博客 424

MFC中ListControl控件的使用

列表控件可以看作是功能增强的 ListBox,它提供了四种风格,而且可以同时显示一列的多中属性值。MFC 中使用 CListCtrl  类来封装列表控件的各种操作。通过调用 BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );创建一个窗口,dwStyle 中可以使用以下一些列表控件的专用风格: l

Lu_ming的专栏 2781

【RL in VLA】VLA中的强化学习

本文提出了一种名为 Reinforcement Learning Distilled Generalist(RLDG) 的方法,通过强化学习生成高质量训练数据来微调机器人基础模型。通过在多个精确操作任务上的实验,我们证明了 RLDG 在成功率和泛化能力上显著优于使用人类演示的传统微调方法。RLDG 不仅减少了对人类演示数据的依赖,还展示了在复杂多阶段任务中的灵活性和有效性。

三木今天学习了嘛の博客 2257

MFC ComboBox的使用

前言   Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。 1、定义控件对应变量   假定已经创建了一个Dialog,并且从控件工具箱将 Comb...

dinaoju5134的博客 246

《QGIS快速入门与应用基础》【专栏完整目录】

《QGIS快速入门与应用基础》第一卷专栏完整目录,覆盖 001–328 全部篇目与附录,逐篇可跳转。

LuckyHanMo的博客 1300

【华为OD机试真题】282、求满足条件的最长子串的长度 | 机试真题+思路参考+代码分析 (C++、Java、Py、C语言、JS)

题目描述 >给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度,字符串本身是其最长的子串,子串要求: >  1、只包含1个字母(a~ z,A~Z), 其余必须是数字; 2、字母可以在子 串中的任意位置; >  如果找不到满足要求的子串,如全是字母或全是数字,则返回-1

KJ.JK 1万+

VS2010/MFC入门编程十五(COMBOX 控件操作)

Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。 1、定义控件对应变量 假定已经创建了一个Dialog,并且从控件工具箱将 Combo Box 控

酒馆~酒友 5715

激光雷达点云配准:ICP与NDT算法详解

激光雷达点云配准:ICP与NDT算法详解​ ,人工智能,计算机视觉,大模型,AI,本文深入解析激光雷达点云配准的ICP与NDT算法。阐述了点云配准基础概念与评价指标,详解ICP算法原理、流程、最优变换矩阵计算、优缺点及改进版,给出Python代码示例;同样解析NDT算法的原理、流程、模型构建、优缺点、参数选择与代码示例。还对比两者在精度、效率、鲁棒性和适用场景的差异,提供算法选择建议,介绍实际应用案例、常见问题及解决方法,探讨算法发展趋势。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 15万+

树形控件的使用

树形控件TreeCtrl和下节要讲的列表控件 ListCtrl在系统中大量被使用,例如Windows资源管理器就是一个典型的例子。 树形控件可以用于树形的结构,其中有一个根接点(Root)然后下面有许多子结点,而每个子结点上有允许有一个或多个或没有子结点。MFC中使用CTreeCtrl类来封装树形控件的各种操作。通过调用BOOL Create( DWORD dwStyle, c...

weixin_30924087的博客 1044

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

MFC——ComBox用法大全

Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。  1、定义控件对应变量 假定已经创建了一个Dialog,并且从控件工具箱将 Combo Box 控件

浮尘丶若梦 814

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

MFC ComboBox 使用方法

自:http://hi.baidu.com/2008windflower/blog/item/bea5d01e41e4bac4a686694c.html  Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 M

跌打滚爬中向前的专栏 1502

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

树形控件(CTreeCtrl)使用简介

修改设置样式:m_treeCtrl.ModifyStyle(0,TVS_HASBUTTONS   |   TVS_LINESATROOT   |   TVS_HASLINES);         树形控件可以用于树形的结构,其中有一个根接点(Root)然后下面有许多子结点,而每个子结点上有允许有一个或多个或没有子结点。MFC中使用CTreeCtrl类来封装树形控件的各种操作。通过调用

721

MFC_Combo_Box(组合框)的详细用法

以下内容为本人积累记录所总结,分享给大家 一、如何添加/删除Combo Box内容   1,在Combo Box控件属性的Data标签里面添加,一行表示ComboBox下拉列表中的一行。换行用ctrl+回车。   2,在程序初始化时动态添加   如: //控件内容初始化   CString strTemp;   ((CComboBox*)GetDlgItem(IDC_COMB

u013485792的专栏 1万+

MFC中CTreeView的使用

(一)树控制的主要功能 树控制和视(Tree Control&View)主要用来显示具有一定层次结构的数据项,如资源管理器中的磁盘目录等,以供用户在其中进行各种选择。树控制中的每个数据项包括数据项名 称的文本字符串和用于表示该数据项的图像,每个数据项下面均可包含各种子项,整个结构就象目录树一样。对于包含各种子项的数据项,可通过鼠标双击来展开或合拢,这可以 通过控制树的不同风格来实

专注于机器视觉领域的学习、研究与应用研发 1980

MFC 组合框ComboBox总结

Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。 1、定义控件对应变量 假定已经创建了一个Dialog,并且从控件工具箱将 Combo Box 控件拖放到上面

Jiwei的专栏 1993

MFC——ComBox用法大全 .

Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。 1、定义控件对应变量 假定已经创建了一个Dialog,并且从控件工具箱将 Combo Box 控

haixiuyundezhuanyong的专栏 633

MFC中ComboBox的用法

Combo Box (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFCCComboBox Class来操作字符串列表。  1、定义控件对应变量 假定已经创建了一个Dialog,并且从控件工具箱将 Combo Box 控件拖放到

meijiexuji的专栏 1420
上一篇: 用VC++创建自定义向导程序
下一篇: C/C++头文件一览
lightyearwp
博客等级 码龄20年 16粉丝 37原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值