Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Win32 CreateWindowEx()窗口图标未正确显示_C_Winapi_Icons_Titlebar - Fatal编程技术网

Win32 CreateWindowEx()窗口图标未正确显示

Win32 CreateWindowEx()窗口图标未正确显示,c,winapi,icons,titlebar,C,Winapi,Icons,Titlebar,我使用CreateWindowEx创建窗口,但我在任务栏中只得到一个图标;窗口的标题栏和当I Alt+Tab显示此类型的虚拟图标时显示的图标:。我将WNDCLASSEX中的hIcon和hIconSm字段设置为从:LoadIcon(hInstance,IDI_应用程序)返回的值 .ico文件本身是由一个.png文件组成的,我将其生成为16x16、32x32和96x96(顺便问一下,推荐的大小是多少?)。可能是我使用了错误的尺寸或颜色深度吗?如果是,为什么它在任务栏中工作(不同大小)?谢谢 图标必须

我使用CreateWindowEx创建窗口,但我在任务栏中只得到一个图标;窗口的标题栏和当I Alt+Tab显示此类型的虚拟图标时显示的图标:。我将
WNDCLASSEX
中的
hIcon
hIconSm
字段设置为从
:LoadIcon(hInstance,IDI_应用程序)
返回的值


.ico文件本身是由一个.png文件组成的,我将其生成为16x16、32x32和96x96(顺便问一下,推荐的大小是多少?)。可能是我使用了错误的尺寸或颜色深度吗?如果是,为什么它在任务栏中工作(不同大小)?谢谢

图标必须定义为某个地方的资源。在资源标题中应该有这样一行:

#define IDI_MYICON 1000
然后在对LoadIcon()的调用中,它应该类似于:

wc.hIcon = LoadIcon(hinstance, MAKEINTRESOURCE(IDI_MYICON));

如果您使用的是VisualStudio,那么添加资源就很容易了。只需右键单击解决方案资源管理器中的资源。

该图标必须定义为某个资源。在资源标题中应该有这样一行:

#define IDI_MYICON 1000
然后在对LoadIcon()的调用中,它应该类似于:

wc.hIcon = LoadIcon(hinstance, MAKEINTRESOURCE(IDI_MYICON));
如果您使用的是VisualStudio,那么添加资源就很容易了。只需右键单击解决方案资源管理器中的资源