如何在树控件中添加图标?
要用到CImageList的Create方法吧。
但不是很清楚。
如BOOL Create(
UINT nBitmapID,
int cx,
int nGrow,
COLORREF crMask
);
BOOL Create(
LPCTSTR lpszBitmapID,
int cx,
int nGrow,
COLORREF crMask
);我自己画了几个稿图,但就是加不进去,用系统自带的IDR_MAINFRAME这个程序图标就可以,但只是显示空白而已。
难道用只能用位图?位图是什么概念,不会是很多图标吧?还有,后面的crMask 是用来覆盖或遮掩图标的吧,要设成多少比较合适?
要用到CImageList的Create方法吧。
但不是很清楚。
如BOOL Create(
UINT nBitmapID,
int cx,
int nGrow,
COLORREF crMask
);
BOOL Create(
LPCTSTR lpszBitmapID,
int cx,
int nGrow,
COLORREF crMask
);我自己画了几个稿图,但就是加不进去,用系统自带的IDR_MAINFRAME这个程序图标就可以,但只是显示空白而已。
难道用只能用位图?位图是什么概念,不会是很多图标吧?还有,后面的crMask 是用来覆盖或遮掩图标的吧,要设成多少比较合适?
解决方案 »
- 大虾一定要来~~我跪求~
- VC中edit 和spin 应用的 问题
- 想做个Combo Box,将添加进Edit中的数据加入Listbox,且能从Listbox中选择,有好的源代码推荐一下
- 求教如何使对话框最大化时,里面控件的位置相应变化。
- 有谁知道如何在vc程序中实现打开windows任务栏的左下角启动功能?
- VC中如何才能得到一个word文档中图片的位置和大小?
- 如何从数据库中读出指定数目的数据?
- 如何建窗口最大化,基于Dialog???
- 怎样把鼠标的移动控制在640*400只内,已便他不可以按到win98的开始菜单
- WinExec执行快捷方式找不到文件,但是执行源文件可以
- 乒乓球女单结束好长时间了,没看nlstone上来散分,我来散好了,不过等级低只能散100.
- 帮个忙
{
CImageList* pImageList = new CImageList();
pImageList->Create(16, 16,/*位图的宽度和高度,其他的没用过*/
ILC_MASK | ILC_COLOR24/*位图颜色*/, 5, 2); CBitmap bitmap;
for(int i=0; i<IMAGE_BITMAP_NUM; i++)
{
UINT nID = BITMAP_IDS[i];//获得位图资源的ID号
bitmap.LoadBitmap(nID);//载入位图
pImageList->Add(&bitmap, (COLORREF)0xFFFFFF);//加入到ImageList
bitmap.DeleteObject();
}
SetImageList(pImageList, TVSIL_NORMAL);
}
//在你加入ITEM到CTreeCtrl中时,指定iImage和iImageSel的值是在ImageList中Add的顺序值
把CImageList* pImageList放到.h中去否则当然只能看到空白了
int n;
//初始化imagelist
m_imageList.Create(16,16,ILC_COLOR24,6,8);
m_imageList.SetBkColor(RGB(255,255,255));
hIcon[0] = AfxGetApp()->LoadIcon(IDI_ICON_PRODUCT);
hIcon[1] = AfxGetApp()->LoadIcon(IDI_ICON_TXT);
hIcon[2] = AfxGetApp()->LoadIcon(IDI_ICON_EXE);
hIcon[3] = AfxGetApp()->LoadIcon(IDI_ICON_INI);
hIcon[4] = AfxGetApp()->LoadIcon(IDI_ICON_DLL);
hIcon[5] = AfxGetApp()->LoadIcon(IDI_ICON_HTML); for(n=0;n<6;n++)
{
m_imageList.Add(hIcon[n]);
} m_pTreeCtrl->SetImageList(&m_imageList, TVSIL_NORMAL);
这样不就可以了吗
我们自己也可以画的吧。