用VS建立的resource文件中可以自己定义icon,每一个icon实际上可以包含多个“版本”的子icon,当使用Win32API的LoadIcon载入图标时,会自动选择最合适大小的子ICON,而使用LoadImage时,可以指定选择哪个大小的子ICON。
其中,32x32用于Desktop快捷方式;
16x16用于任务栏(taskbar),系统托盘(systray)和程序标题栏上。
不过,使用LoadIcon为systray指定icon时,只会去选择32x32的icon,由于缩放,会导致失真。所以要用LoadImage为systray指定16x16的icon。
HICON hicon= (HICON)LoadImage( hinstance,
MAKEINTRESOURCE(ICON_ID),
IMAGE_ICON,
16,16,
LR_DEFAULTCOLOR);
其中,32x32用于Desktop快捷方式;
16x16用于任务栏(taskbar),系统托盘(systray)和程序标题栏上。
不过,使用LoadIcon为systray指定icon时,只会去选择32x32的icon,由于缩放,会导致失真。所以要用LoadImage为systray指定16x16的icon。
HICON hicon= (HICON)LoadImage( hinstance,
MAKEINTRESOURCE(ICON_ID),
IMAGE_ICON,
16,16,
LR_DEFAULTCOLOR);