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风格的按钮才有问题?

发表评论


注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Canonical URL by SEO No Duplicate WordPress Plugin