imagelist均割 切割 分割 一个大位图

本文介绍了如何在C++中使用CImageList控件来创建和操作图像列表。通过加载大位图,然后自动截取成小图,填充到imagelist中,用于toolbar按钮。同时展示了如何进行自定义绘制和使用内存设备上下文进行位图操作。
摘要由CSDN通过智能技术生成
m_imagelist.Create(16, 16, TRUE, 2, 2);                                               //创建16*16的图标
 m_imagelist.Add(AfxGetApp()->LoadIcon(IDR_DBTYPE));                    //向imagelist中加入图标
 m_imagelist.Add(AfxGetApp()->LoadIcon(IDI_ICON1));

CImageList控件一般不能依靠本身使用,和其它控件一起配合使用。

 

imagelist还可以根据一幅大的位置,按相应的大小自动截取成小图填充在imagelist中。下面一个例子是将toolbar(资源号:uToolBar)上的图片截取后放在imagelist中

 CBitmap bmp;
 BITMAP bmpInfo;
 bmp.LoadBitmap(uToolBar);
 bmp.GetBitmap(&bmpInfo);

 int nBtCountSum = pToolBar->GetToolBarCtrl().GetButtonCount();
 int i, nBtCount = 0;
 for(i=0; i<nBtCountSum; i++)
 {
  //计算button的个数
  //GetItemID: The command ID of the button or separator specified by nIndex.
  //Separators return ID_SEPARATOR
  if(ID_SEPARATOR != pToolBar->GetItemID(i))
   nBtCount+&
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值