Vista按钮效果消失
昨天工程重新编译了一下,发现个奇怪的问题:原来的Vista 按钮效果突然消失了。本来Vista的按钮的效果是:当鼠标滑过按钮区域的时候按钮的背景会被自动变成Vista的风格,按钮的大小和边角也有所改变。可是不知为什么按钮就一直是Windows XP 的经典模式了。我开始以为自己改了控件的代码,于是开始用Beyond compare比了半天,甚至把修改的文件滚回原来,还是解决不了问题。 最后,问题居然出在被我疏忽的资源文件中*.rc. 资源文件中的唯一差别是大部分资源的定义DISCARDABLE都被转换成MOVEABLE PURE,这个项目一直是用VC 6.0开发的,前些天记得我曾经用Visual Studio 2005打开过,并且Vs进行过自动转换,但是我记得只是转换工程文件*.sln啊,怎么会把资源改掉呢。于是我重试了一次也没有发现资源文件被它改掉… … Google了一会儿也没有什么发现,只是发现了简短的解释。 MOVEABLE Resource can be moved if necessary in order to compact memory. DISCARDABLE Resource can be discarded if no longer needed. 不过这个解释似乎也说不通,为什么我自己加载的按钮效果还是正常的,而只有默认Vista风格的按钮才有问题?
NaRiver Blog