
MFC中LoadIcon问题
在CFrameWnd::GetIconWndClass定义中:HINSTANCEhInst=AfxFindResourceHandle(MAKEINTRESOURCE(n...
在CFrameWnd::GetIconWndClass定义中:
HINSTANCE hInst = AfxFindResourceHandle(MAKEINTRESOURCE(nIDResource), RT_GROUP_ICON);
上面得到的hInst = 0x00400000 说明是在某个模块找到了资源的
HICON hIcon = ::LoadIcon(hInst, MAKEINTRESOURCE(nIDResource));
但运行上面这句后为什么结果为 hIcon=0x00000000 ???资源加载失败?
更进一步,GetIconWndClass()这个函数的目的是什么? 展开
HINSTANCE hInst = AfxFindResourceHandle(MAKEINTRESOURCE(nIDResource), RT_GROUP_ICON);
上面得到的hInst = 0x00400000 说明是在某个模块找到了资源的
HICON hIcon = ::LoadIcon(hInst, MAKEINTRESOURCE(nIDResource));
但运行上面这句后为什么结果为 hIcon=0x00000000 ???资源加载失败?
更进一步,GetIconWndClass()这个函数的目的是什么? 展开
1个回答
展开全部
GetIconWndClass就是框架窗口创建之前的资源准备,这个函数并不仅仅是准备了icon,而是包括了框架和资源整合的大部分工作。这个函数只能被LoadFrame调用,不可以自己来调用。
如果是系统运行出现这个LoadIcon的问题,一般是资源被锁定或占用,具体原因没调试不好说。
如果是你自己要使用LoadIcon,在MFC下不需要这么用,app类有LoadIcon成员函数处理这些事物,或者用LoadImage加载图标,可以获得更灵活的形式。
如果是系统运行出现这个LoadIcon的问题,一般是资源被锁定或占用,具体原因没调试不好说。
如果是你自己要使用LoadIcon,在MFC下不需要这么用,app类有LoadIcon成员函数处理这些事物,或者用LoadImage加载图标,可以获得更灵活的形式。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询