如何让vc6开发的软件具有win7风格

作者:小知 发布时间:2017-07-23 分类:MFC

     技术所限,难免错误,如有不对之处,敬请留言指正!

      本篇文章使用的工程源码test.rar点击可下载,可用vc++6.0或者vs2008打开。

      本篇文章使用到TXT文件win7风格mfc.rar解压即可。



      使用vc++6.0开发出来的软件,除了自绘控件以外,使用vc++6.0的自身控件,控件的风格是下面这样的。

QQ截图20170723233140.png

    这种风格不免有些难看,接下来我们要把它变成win7风格的,步骤如下:

    1:使用vc++6.0新建一个命名为test的基于对话框的工程。

QQ截图20170723233706.png

QQ截图20170723234014.png

    2:在窗体上添加若干个控件如下所示,此时运行效果如图。

QQ截图20170723234654.png

QQ截图20170723235315.png

    3:此时插入资源,选择自定义,输入24,然后点击确定。

QQ截图20170723235522.png

QQ截图20170723235832.png

QQ截图20170724000010.png

    4:此时可以看到一个IDR_DEFAULT1的控件资源右边是这个资源的内容,这时候内容是000000,此时在右侧空白处点击鼠标右键粘贴以下内容:

<?xml version="1.0" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="MRIMONITOR" type="win32"/>
<description>BASDA MRI MONITOR</description>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*"/>
</dependentAssembly>
</dependency>
</assembly>


    复制完后变成资源内容变成下面这样

QQ截图20170724002353.png

    把控件ID的名字IDR_DEFAULT1改为1

QQ截图20170724003554.png

    此时,运行,发现mfc窗体里面的控件已经变成了win7风格。

QQ截图20170724003833.png

    分析一下这段改变控件风格的代码:

<?xml version="1.0" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="MRIMONITOR" type="win32"/> //这段name=""引号内可以取你工程的名字
<description>BASDA MRI MONITOR</description> //中间><之间的名字可以改成你的工程的名字或者是exe的名字
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*"/>
</dependentAssembly>
</dependency>
</assembly>



    其实我们到工程文件夹里面可以看到一个名字为default1的后缀为bin的文件,我们用记事本打开发现就是我们刚才复制粘贴的内容。

QQ截图20170724005604.png

本篇完。





呃 本文暂时没人评论 来添加一个吧

发表评论

必填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。