MFC tree control 显示图标问题。
我用FindFirstFile();和FindNextFile();取到文件和目录列表,并显示在treecontrol,用SHFILEINFOsfi;和SHGetFile...
我用FindFirstFile();和FindNextFile();取到文件和目录列表,并显示在tree control,用SHFILEINFO sfi; 和
SHGetFileInfo(filename, 0, &sfi, sizeof(SHFILEINFO),SHGFI_SYSICONINDEX | SHGFI_SMALLICON);
获取系统文件夹图标。但我不知道怎么将获取的图标显示在tree control控件中,求高手解答,最好详细点,附上代码及注释,非常感谢。 展开
SHGetFileInfo(filename, 0, &sfi, sizeof(SHFILEINFO),SHGFI_SYSICONINDEX | SHGFI_SMALLICON);
获取系统文件夹图标。但我不知道怎么将获取的图标显示在tree control控件中,求高手解答,最好详细点,附上代码及注释,非常感谢。 展开
1个回答
展开全部
mfc库中有CTreeCtrl,它有个以下两个成员函数
CImageList* SetImageList(
CImageList * pImageList,
int nImageListType
);
BOOL SetItemImage(
HTREEITEM hItem,
int nImage,
int nSelectedImage
);
下面是大致步骤:
1、你首先用你fileinfo中的icon创建一个CImageList图片链表;
2、调用SetImageList;
3、在你添加好条目后,获得条目的句柄,调用SetItemImage
(hItem是你向treectrl添加条目后的句柄,nImage是图片的索引,nSelectedImage是被鼠标选中状态下图片的索引。)。
CImageList* SetImageList(
CImageList * pImageList,
int nImageListType
);
BOOL SetItemImage(
HTREEITEM hItem,
int nImage,
int nSelectedImage
);
下面是大致步骤:
1、你首先用你fileinfo中的icon创建一个CImageList图片链表;
2、调用SetImageList;
3、在你添加好条目后,获得条目的句柄,调用SetItemImage
(hItem是你向treectrl添加条目后的句柄,nImage是图片的索引,nSelectedImage是被鼠标选中状态下图片的索引。)。
追问
如何用fileinfo中的icon创建一个CImageList图片链表。
追答
CImageList 有乘员函数
Add(
HICON hIcon
);
参考msdn
微测检测5.10
2023-05-10 广告
2023-05-10 广告
您好!建议咨 深圳市微测检测有限公司,已建立起十余个专业实验室,企业通过微测检测就可以获得一站式的测试与认 证解决方案;(EMC、RF、MFi、BQB、QI、USB、安全、锂电池、快充、汽车电子EMC、汽车手机互 联、语音通话质量),认证遇...
点击进入详情页
本回答由微测检测5.10提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询