VB6 app icon in Windows 7 taskbar is blurred

南笙酒味 提交于 2019-12-13 00:43:21

问题


I have a VB6 application and one of the Form icon is set as application icon. The problem is that in Windows 7 the icon looks blurred even though the icon contains 16x16, 32x32 and 48x48 sizes.

Is there a way around this problem? It tried the SendMessage(... SETICON... ICON_BIG) but it does not seems to work.


回答1:


What colour depth are the icons in your ico file?

VB6 (I believe) supports a maximum 8 bit colour depth (256 colours) for icons:-

So if there is no size 48 x 48 icon in 8 bit colour depth it could be using the nearest match and scaling it to 48 x 48

EDIT:

I just tried this using an icon that did not have a 48 x 48 icon at 8 bit depth (but did have 48 x 48 at higher depths) and the icon used in the taskbar was the 32bit icon at 8 bit colour depth.




回答2:


I don't claim to understand the full heuristics used to choose the icon image to display in various places, but I think what is happening here is that your 48x48 image is being taken and scaled down.

I suspect what happens with a VB6 program on many versions of Windows is that if there is no 16-color 16x16 image then a larger size gets taken and scaled. The reason may simply be due to the order of the images in the ICO resource/file.

If you edit your ICO and add a 16-color version of your 16x16 image your "problem" may disappear.



来源:https://stackoverflow.com/questions/10309875/vb6-app-icon-in-windows-7-taskbar-is-blurred

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!