VC中treectrl的item前添加图标怎么去除背景色呀?

我加的图标在电脑上看是没有背景色的,但是加到treectrl上后就成了有黑色背景的图标了,HICONicon[4];icon[0]=AfxGetApp()->LoadIc... 我加的图标在电脑上看是没有背景色的,但是加到treectrl上后就成了有黑色背景的图标了,HICON icon[4];

icon[0]=AfxGetApp()->LoadIcon(IDI_ICON5);
icon[1]=AfxGetApp()->LoadIcon(IDI_ICON7);

CImageList *ImageList4Tree = new CImageList;
ImageList4Tree->Create(16,16,0,4,4); //16,16为图标分辩率,4,4为该list最多能容纳的图标数
/* ImageList4Tree->Create(IDI_ICON5,48,6,RGB(255, 255, 255));*/

for(int i=0;i<2;i++)
{
ImageList4Tree->Add(icon[i]); //读入图标

}
ImageList4Tree->SetBkColor(RGB(255, 255, 255));

m_Control.SetImageList(ImageList4Tree,TVSIL_NORMAL);

这样的代码设置也无效,谁能帮我解决呀?
展开
 我来答
silvergingko
2009-12-02 · TA获得超过5945个赞
知道小有建树答主
回答量:688
采纳率:0%
帮助的人:867万
展开全部
这样设置试一下:
ImageList4Tree->Create(16,16, ILC_COLOR32, 4, 4);

去掉:
ImageList4Tree->SetBkColor(RGB(255, 255, 255));

另外,TVSIL_NORMAL意味着把图标设置成正常尺寸,正常尺寸的图标是32 * 32大小,而楼主写-ImageList4Tree->Create(16,16,0,4,4); 把图标设置成了小图标,虽然显示没什么问题,但太小看上去不舒服,这样再改一下,看看效果是不是会更好:
ImageList4Tree->Create(32,32, ILC_COLOR32, 4, 4);

图标文件(*.ico)是有很多种类的,楼主可能没做过图标文件的程序编码,因此在这里值得提醒一下,不同种类的图标需要用不同的程序代码,并不是千篇一律的。譬如图标文件中的图标种类会影响到ILC_COLOR32和16*16/32*32等参数的显示效果。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式