【发布时间】:2013-08-21 07:12:49
【问题描述】:
我正在使用 Visual Studio 的快速版本。因此,使用函数调用 MAKEINTRESOURCE 是不可能的。我正在尝试通过覆盖 getAdditionalClassInfo 函数来设置应用程序图标。
WNDCLASSW *Robot::getAdditionalClassInfo(void) const {
WNDCLASSW *wc = Window::getAdditionalClassInfo();
HANDLE hIcon = LoadImage(NULL, L"imagepath/image.png", 32, 32, LR_LOADFROMFILE);
wc->hIcon = .....;
return wc;
}
有谁知道如何在不使用资源的情况下设置此图标?
【问题讨论】:
-
你必须使用资源。当您有大量空闲时间来弄清楚如何编写 .rc 文件时,使用 Express 版本是可以的。它是一个学习版。
-
您对
LoadImage的调用缺少类型参数(IMAGE_ICON),我不知道Windows 是否接受直接加载PNG 文件作为图标;您应该首先使用 Gimp 之类的程序使其成为实际的图标文件 (.ico)。就像 Hans 说的,你“可以”用 Express 版本制作资源,只需要手动编写 .rc 文件(Express 版本带有资源编译器,即使它没有资源编辑器)。 -
不要深入这个。要么通过免费的资源编辑器与 Express 一起使用来让你的生活过得愉快,要么购买商业版。
-
包含单个图标的 .rc 文件几乎没有那么复杂。
标签: c++ visual-studio-2010 winapi resources icons