VC程序使用CImageList类

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

要说CImageList类已经不是第一次接触了,这个类在一些VC程序里面经常会用到。

小弟在下面总结了一些自己用到的情况:

 

首先在*.h头文件里面加入CImageList类的定义:

然后在类的实现*.cpp里面使用下面的代码创建CImageList链表:

   

在MFC里面很多控件类都有SetImageList这个函数,这个函数可以使图标和控件类关联在一起。只不过每个控件的具体实现不一样,参数也不一样。

下面是CListCtrl这个控件类的实现:

实现之后列表框的效果,看起来还不错:

 

除此之外有些InsertItem函数也有一个nImage的参数,这个参数是一个int类型的变量。所以我们要将图标同时插入的时候,只要在这个函数里面指定一下图标在CImageList链表里面的索引之就OK了!

 

CImageList类还可以用在其它的场合,比如在基于对话框的工具栏的实现、树形列表的实现、Tab的实现等等,可以说使用范围非常广泛了!

下面看一下小弟实现的几种形式:

 

Tree控件的效果,比如说实现像QQ这样的软件的时候可以尝试一下:

 

 

Tab控件的效果,个人感觉有点像浏览器的选项卡,所以搞了一下看看效果:

 

 

发现自己自从上次经过了福昕的笔试之后就再也不惧查文档了,可能是那次的一下午的经历让我喜欢上MSND了吧!

这两天在看一个视频,当然上面的也是视频里面的例子,只不过为了不让自己忘记,写一下感受。

CImagelist 基本用法 CImagelist 基本用法 CImagelist 基本用法 CImagelist 基本用法 立即下载

相关推荐

grafana使用方法

1、点击仪表盘2、新建仪表盘3、选择数据源4、选择查询的条件5、美化。

2403_87359664的博客 323

ImageList00

<br />1.综述<br />在MFC中CImageList类封装了图像列表控件的功能,图像列表是一个具有相同大小的图像(可以是不同类型)的集合,其主要用于应用程序中大规模图标的存储。该控件是不可见的,通常与其它如CListBox,CComboBox,CComboBoxEx,CTabCtrl以及CTreeCtrl一起使用,为他们提供图标资源。<br />图象的每个集合中均以0为图象索引基数,可以把这些图标看成是以数组方式存储的,图像列表通常由大图标或位图构成,其中包含位图模式。实际上,所有的在同一个图象列

uda1985的专栏 1039

JavaFx之集成FontAwesomeFX与JFoenix(十五)

本文详细介绍了如何在JavaFx项目中同时集成JFoenix和FontAwesomeFX,以创建现代化、美观的桌面应用界面。通过Maven依赖配置、动态代码创建和FXML静态声明两种方式,演示了如何将JFoenix的Material Design控件与FontAwesomeFX的丰富矢量图标完美结合,并提供了实战案例展示如何构建一个功能完善的现代化工具栏。

pepsi的博客 437

CImageList用法介绍 (zz)

图像列表控制(CImageList)是相同大小图像的一个集合,每个集合中均以0为图像的索引序号基数,图像列表通常由大图标或位图构成,其中包含透明位图模式。可以利用WINDOWS32位应用程序接口函数API来绘制、建立和删除图像,并能实现增加、删除、替换和拖动图像等操作。图像列表控制提供了控制图像列表的基本方法,这些方法在WINDOWS95及以后版本才能实现。 (一)图像控制的对象结构 ...

weixin_30760895的博客 482

【python爬虫实战】Python 抓取京东商品信息与评论,做竞品分析

本项目通过爬取京东平台商品数据,实现了完整的电商竞品分析流程。文章首先介绍了项目目标和技术栈,包括Python、Requests、BeautifulSoup等工具。然后详细解析了京东页面结构,包括商品列表页、详情页和评论页的特点。核心部分展示了商品列表爬取、评论数据获取以及竞品分析三个关键步骤的代码实现,每部分都包含运行结果和原理讲解。通过情感分析和关键词提取,项目能够对比不同产品的用户评价差异。最后,文章还讨论了合规性考量、优化建议和常见问题解答。该方案不仅适用于市场调研,也为企业制定营销策略提供了数据支

2503_91057718的博客 1万+

几款支持国标GB28181的平台以及视频监控设备接入的配置方法(Web端无插件播放)

GB28181解决的一个主要问题就是如何远程、跨网络、跨区域、跨级别的访问网络中的监控设备(包括IPC、NVR等),本文介绍几款G28181平台的接入配置方法,适合有监控视频摄像头的远程接入和预览需求的人群参考使用。

一名高级工程师的博客 1万+

CImageList 图像列表

nGrow 具体解释:图像列表空间不够而继续添加image时,将按照nGrow继续分配空间,设计时根据具体情况设置合适的值,避免内存频繁的改变图像列表,因为过度频繁会使系统记忆体碎片化。但参数到底设置多少,还是要根据实际的情况设置合理的值,一要避免浪费空间,又要避免频繁的对Image容器进行resize操作。nGrow:当初始分配的图像个数不够的时候,新增一个图片时,指定图象列表能增加的新图象个数(难理解);nFlags:创建图像列表的类型,包括4/8/16/24/32/位色;

zxf347085420的博客 958

[ 虚拟专用网 ] IPsce 虚拟局域网(安全的IP协议的虚拟专用网)详解(二) --- 安全联盟SA

???? 博主介绍 ????‍???? 博主介绍:大家好,我是_PowerShell,很高兴认识大家~ ✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 ????点赞➕评论➕收藏 == 养成习惯(一键三连)???? ????欢迎关注????一起学习????一起讨论⭐️一起进步????文末有彩蛋 ????作者水平有限,欢迎各位大佬指点,相互学习进步! 目录 ???? 博主介绍 一、什么是安全联盟 二、协商参数两种方式:(手动、IKE) 1. 手动 2.

qq_51577576的博客 2801

VC实现动画应用两则

VC实现动画应用两则 华北石油研究院 李莉莉 ---- Windows(9x)支持的VC曾是应用最广的语言之一,现在仍然有着广大的用户。笔者是VC的“信徒”之一,在这上面耗费了不少时间,与将笔者的两则应用实例介绍给大家,希望能与大家共同交流。 ---- 一.在VC中实现快速动画 ---- 快速动画是指每隔一段很小的时间间隔就快速擦去原有画面,并重新画上新的画面的动画技术。快速动

iBreathe的专栏 2251

【主题建模】一种基于深度学习的主题建模方法:BERTopic(实战篇)

BERTopic 是基于深度学习的一种主题建模方法。2018 年底,Devlin et al. 提出了 Bidirectional Encoder Representations from Transformers (BERT)。BERT 是一种用于 NLP 的预训练策略,它成功地利用了句子的深层语义信息。

Data · Model · Agent · Repeat 2万+

网口通信实战(C#完整版):基于TCP协议的工业仪表数据采集系统开发

工业现场中80%的智能仪表(压力/温度/液位/流量/数显仪表)、采集模块、测控终端均支持TCP网口通信,这类设备的TCP通信有鲜明的工业特性:基于字节流的自定义二进制协议、一问一答的主从通信模式、对数据完整性/稳定性要求极高。本次实战是纯工业级落地项目,基于C# WinForm + .NET Framework 4.8(工业上位机标配)✅纯原生无依赖:零第三方类库/控件,仅用C#原生,源码可100%复用、无引用冲突、工控机完美兼容;✅双采集模式完美适配:同时实现「单次手动采集」+「连续自动采集」

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1799

php标题栏的图标,如何在标题栏中显示动态图标

一般情况下,程序中的标题栏的图标是静态的。那么如何让标题栏中的图标动起来呢。原理很简单,那就是做一系列的图片,让图片按顺序交替显示,图标就像动起来一样。现在动手来做吧!1.新建一个CAnimateIcon类a.AnimateIcon.h如下:class CAnimateIcon{protected://创建一个列表变量,用于保存图像列CImageList m_imgList;//当前图像序号int...

weixin_36360005的博客 268

32、机械臂数字孪生模型创建指南

本文介绍了如何在MATLAB Simscape中为一款3自由度(DOF)微型机械臂创建数字孪生模型。内容涵盖硬件参数测量、Simulink模型搭建流程,包括初始条件设置、基座与上部主体构建、上臂结构设计等关键步骤。通过使用Solid、Revolute Joint和Rigid Transform等模块,实现机械臂多体系统建模,并支持后续运动仿真与物理系统的对比诊断。读者可依据指南逐步完成模型构建,相关资源可通过MATLAB File Exchange或指定网站获取。

qsc9012345的博客 214

VC通用控件编程之CImageList控件

 图像列表控制(CImageList)是相同大小图像的一个集合,每个集合中均以0为图像的索引序号基数,图像列表通常由大图标或位图构成,其中包含透明位图模式。可以利用WINDOWS32位应用程序接口函数API来绘制、建立和删除图像,并能实现增加、删除、替换和拖动图像等操作。图像列表控制提供了控制图像列表的基本方法,这些方法在WINDOWS95及以后版本才能实现。   (一)图像控制的对象结构  

fqli1610的专栏 556

IDEA的使用指南

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

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

CImageList类Create函数参数解析

前面提到了CImageList类的Create(...)函数,虽然MSDN上已经有所解释,但仍有网友问到参数的具体含义,下面就我的理解,对参数进行一次轻量级的剖析  函数原型: BOOL Create( int cx, int cy, UINT nFlag

GIS_wudi的专栏 1万+

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

VC6中一个顽固很久CImageList的GDI泄露

程序开发告一段落,经过强力测试的时候,发现某处存在一个很不明显的GDI泄露问题。费了好久,追根溯源,居然发现是很早以前底层对图像列表CImageList封装导致。底层库出现问题,总会让我长吃一惊,吓出一身汗。解决问题是首要目的;另外分析下问题产生的原因,居然也发现一些很有意思的事情。 一.Bug重现 用最简单的代码来还原下bug产生的情况。如下代码演示了为图像列表添加图标的集中方法:从资源中添

gisxu的专栏 1530

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

MFC ADO用CListCtrl CImageList显示图片

这些天在弄MFC下的ADO图片保存到数据库的工作,确实MFC比较复杂,但功能也很多。此方法应该适用于大多数VC,未经证实! 1.图片如何保存到数据库中?     新建access数据库中,对表进行设计,新建一项存放图像数据,看下图       一定要选择OLE对象,而不是备注之类。         可以看到保存后的图像数据是长2进制数据,并且你看不到~        什么,你还不

延陵小明 8512

CImageList加载位图

使用下列代码即可实现: HBITMAP hBitmap; CBitmap *pBitmap; CImageList *pImageList; pImageList=new CImageList; pImageList->Create (32,32,ILC_COLOR4,5,2); pBitmap=new  CBitmap; hBitmap=(HBITMAP)LoadImage(NUL

u012750259的专栏 1067

VC应用程序上引用动画的效果

1 动画实现原理 窗口标题栏上、工具条上、状态条上存在的都是一些较小的图像,我们可通过不同的相对连续的几幅静态画面按一定的时间间隔显示来实现动画的效果。在VC中有一个CImageList类(CImageList 类提供了Windows图像列表通用控件功能),可以以图像列表的方式管理图像,图像列表中的图像大小相同,索引以0为开始,每个图像都可以单独引用。接着,利用Draw函数在一定的时间间隔播放出

Reverser的专栏 744

VC5中使用标签控件 (转)

VC5中使用标签控件 (转)[@more@]  VC5中使用标签控件   VC5中,标签控件是由CTabCtrl类来作数据支持的。做一个标签控件,主要有以下几个步骤:  一、在ResourceView标签页(就是VC5左面的...

csd3176的博客 154

CImageList使用指南

1.综述在MFC中CImageList类封装了图像列表控件的功能,图像列表是一个具有相同大小的图像(可以是不同类型)的集合,其主要用于应用程序中大规模图标的存储。该控件是不可见的,通常与其它如CListBox,CComboBox,CComboBoxEx,CTabCtrl以及CTreeCtrl一起使用,为他们提供图标资源。 图象的每个集合中均以0为图象索引基数,可以把这些图标看成是以数组方式...

tempsitegoogle 86
上一篇: U盘启动Meego
下一篇: 系统引导管理器GRUB,为初学者指南
bitsjx
博客等级 码龄18年 57粉丝 49原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值