MFC ImageList控件的使用方法

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

概述:

Imagelist 控件

ImageList  控件是  ActiveX  控件组的一部分,该控件组可以在文件   MSCOMCTL.OCX   中找到

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。要使用该控件,需通过编辑代码实现。该控件用以存储大小相同的一组图像。常使用图像列表控件来为工具条、树状控件、列表控价等的内容设置图标。当然也用可以图像列表将图像绘制到程序中。本文将详细介绍图像列表控件,并以一个的实例演示如何使用图像列表。 阅读详情

相关推荐

泛微Ecology9单点登录实战指南:从Token获取到页面跳转

本文提供了一份详尽的泛微Ecology9单点登录实战指南,重点解析了Token跳转式SSO的核心流程。内容涵盖从理解关键参数(如appid、loginid)与一次性Token机制,到通过代码示例演示如何正确调用接口获取Token,并详细说明了拼接不同场景跳转地址的完整规则与安全实践,旨在帮助开发者高效、稳定地实现业务系统与OA门户的无缝集成。

ol789012345的博客 1064

VC MFC列表视图(CListCtrl)控件

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

7775

Python爬虫实战:5分钟搞定Boss直聘数据抓取(附完整代理IP配置)

本文详细介绍了如何使用Python爬虫高效抓取Boss直聘的招聘数据,包括环境配置、反爬策略、数据采集与存储、数据分析等完整流程。通过实战案例,帮助开发者快速掌握招聘市场数据抓取技术,为职业决策提供数据支持。

weixin_30832143的博客 346

列表视图控件

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

dengtangxie6311的博客 203

点餐系统数据库设计--SQL Server

友情链接 1、学生成绩管理系统数据库设计–MySQL 学生成绩管理系统数据库设计–MySQL 2、医疗信息管理系统数据库–MySQL 医疗信息管理系统数据库–MySQL 3、邮件管理数据库设计–MySQL 邮件管理数据库设计–MySQL 4、SQL Server医疗信息管理系统数据库【英文版-源码】–(Medical Management System Database) SQL Server医疗信息管理系统数据库【英文版-源码】–(Medical Management System Database) 5

若如初见 8万+

手持式激光测距仪全套方案

激光测距全套方案,包括原理图、源代码、PCB、BOM、光学部分资料,结构、特殊元件数据手册及供应商联系方式,提供调试技术文档。全套方案已成功打板验证,实现0.05~50m测量范围,精度在+/—1.5mm,激光波长635~650nm,功率《1mW。方案预留了TTL串口、RS485接口,可通过串口助手看到测量数据,可自行DIY或者商业开发。无论是电路小白,还是技术大拿,都能通过方案资料成功做出一套激光测距仪。

Laser01的博客 2055

CListCtrl在SetImageList之后,如何去掉图像;;如何改变ClistCtrl行高

有时候在程序中需要动态的让CListCtrl显示或不显示前面的图像。 通常设置图像可以这样:         CImageList ImageList;         ImageList.Create(IDB_AFFIX, 16, ILC_MASK, RGB(255, 2

学而不思则罔 1915

国产FPGA开发实战:紫光同创编程软件中的约束文件详解与常见问题

本文详细解析了紫光同创FPGA编程软件中约束文件的关键配置技巧与常见问题。通过基础架构解析、时钟约束实践、物理约束调控及典型问题排查指南,帮助开发者高效掌握国产FPGA开发中的约束文件应用,提升开发效率与设计稳定性。

gin88的博客 904

MFC中ListControl控件的使用

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

Lu_ming的专栏 2781

配电网可靠性评估(一)—最小路法和非序贯蒙特卡洛模拟法的matlab实现

电力系统的可靠性研究是相关领域的热点问题。根据研究对象的不同,又可分为发电系统的可靠性,输电系统的可靠性和配电系统的可靠性。配电网在电力系统中处于最末端的位置,直接和用户相连,一旦出现故障情况,就会在用户侧表现为停电事故。因此对配电网的可靠性评估有着重大意义。......

配电网和matlab的博客 1万+

Camera metadata

Camera metadata

weixin_42136255的博客 2528

MFC ComboBox的使用

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

dinaoju5134的博客 246

从SOMEIP看SOA,汽车电子电器架构的转变

从SOMEIP看SOA,汽车电子电器架构的转变

天赐好车的博客 241

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

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

酒馆~酒友 5715

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

树形控件的使用

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

weixin_30924087的博客 1044

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

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

MFC——ComBox用法大全

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

浮尘丶若梦 814

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

MFC ComboBox 使用方法

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

跌打滚爬中向前的专栏 1502

树形控件(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操作注册表的两种方法(方法二超简单 )
下一篇: OpenCV的Mat和Halcon的HObject类型互相转换
c1learning
博客等级 码龄14年 43粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值