我正在使用nana在我的C++应用程序中构建图形用户界面,它基本上工作得很好。但是,在Windows下设置窗口图标时遇到问题:
nana::API::window_icon_default(nana::paint::image("hunger.ico"));在与可执行文件相同的文件夹中肯定有一个文件hunger.ico,我仔细检查过了。该图标文件的大小为32x32 (或16x16)。我还尝试检索图标文件的完整路径,如下所示:
wchar_t buffer[MAX_PATH];
DWORD len = sizeof(buffer);
GetModuleFileName(nullptr, buffer, len);
std::wstring ws(buffer);
// concatenate ws and "hunger.ico" here但是,当我从VS2015中运行(控制台)应用程序时,使用的是默认窗口图标。你知道我这里遗漏了什么吗?
发布于 2017-07-06 21:14:27
这个电话对我来说很好。图标将出现在应用程序窗口标题栏和任务栏中。
nana::API::window_icon(
myform.handle(),
nana::paint::image("myicon.ico"));你需要传入申请表的句柄(为什么?( window_icon()不应该接受表单并为自己提取句柄吗?)并且图标文件需要位于具有所需不同分辨率的工作文件夹中
发布于 2017-03-24 05:18:10
我希望金豪能够解决将图标加载到正在运行的程序中的问题。
...but,我不确定,但是如果你想让你的.exe文件甚至在windows资源管理器中使用你的ico/bmp,你将需要将它包含到.exe中,而nana一个人可能无法做到这一点。通过将图标作为资源添加到VS项目中,我解决了这个“问题”:在解决方案资源管理器中,右键单击并添加...一种资源...选择一个图标,这可能是新的.这将启动一个图标编辑器,您可以在其中将任何图像格式导入到您的图标。您只需要在编译时使用图像文件,而在运行时不需要。
https://stackoverflow.com/questions/42965070
复制相似问题