VC 解决图片失真问题

53 篇文章 0 订阅
5 篇文章 0 订阅

在我们实际开发过程中,总是经常出现图片失真的问题,使得整个程序的界面开起来不美观。

接下来让我们一起来解决这个问题吧!

首先,我们先定义一个CImageList,接着我们要去了解里面的函数Creat

BOOL Create( int cx, int cy, UINT nFlags, int nInitial, int nGrow );
现在对这几个参数做个详细介绍如下:

  1.前两个参数指定图标的宽度和高度,即:图标的尺寸定义。

  2.第三个参数指定何如显示图标。ILC_ COLOR8说明以256色调色板来显示图标。而TRUE则指明了以透明方式来显示图标。那么两者进行"按位或"运算后的意义变为:以透明方式来显示256色图标。
  3.第四和第五个参数则分别为:初始图标个数和新增图标时对象自动申请内存空间的步长。如果在
大批量操作图标,并且需要不断的增删图标时,设置第五个参数可以改变程序的性能,如果第五个参数设置的比较适中则可以避免程序反复的申请和释放内存空间。

  最后的一步就是加载和添加图标资源了。

这里我们先把创建好:m_ImageList.Create(32, 32, TRUE | ILC_COLOR8, 1, 0);

实例一:添加ICON图标

HICON hIcon = NULL;
hIcon = (HICON)::LoadImage(::AfxGetInstanceHandle(),
MAKEINTRESOURCE(IDI_ICON1), IMAGE_ICON, 32, 32, 0); 
m_ImageList.Add(hIcon);

 

实例二:添加BitMap图

 CBitmap hBitmap;
 hBitmap.LoadBitmap(IDB_BITMAP1);
 m_ImageList.Add(&hBitmap,ILC_COLOR8);

 

其他的图标也是类似的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值