zoukankan      html  css  js  c++  java
  • MFC如何配置使用Win7风格的控件而不是XP风格控件

    你是不是遇到过MFC控件在项目中样式是win7风格,运行exe程序又变成了比较古老的XP风格?想要修改控件样式,首先得知道影响界面样式的原因。

    影响界面控件风格的因素是:VS项目使用的字符集会影响使用的界面控件的版本,从而影响界面效果。

    Unicode版会自动嵌入Win7风格的控件,多字节版则不会嵌入Win7风格控件,而是使用很老风格的控件。而不同的字符集默认情况下会决定使用的控件版本。

    因此,将界面样式修改的最简单粗暴的方式就是修改字符集。将多字节改为Unicode版本。

    但是,有些程序将多字节改为Unicode版本会报错,改错将是很麻烦的事情,那这样就没办法了吗?

    http://www.cjjjs.com/paper/xmkf/201661205622573.aspx这篇文章的作者给我们提供了解决方案。

    总结出的解决步骤是:

    1、点击VS项目的配置属性-》清单工具。将嵌入清单改为否,运行程序。发现在程序debug目录下,会生成manifest配置文件,其名称为:项目名.exe.manifest。

    2、打开manifest配置文件,在如下代码位置添加<dependency> 和</dependency> 之间的代码。

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
    <dependency> 
    <dependentAssembly> 
    <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="x86" publicKeyToken="6595b64144ccf1df" language="*"> 
    </assemblyIdentity> 
    </dependentAssembly> 
    </dependency> 
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> 

    3、重新编译运行即可。

    注意:将嵌入清单改为否之后,此时manifest配置文件是不内嵌的,所以在运行的时候,使用要和exe一起,不能缺少。这样也就不方便了。因此,可将编译生成的:项目名.exe.manifest文件放入源程序目录,并将该配置文件名称放入清单工具的附加清单文件下,嵌入清单改为是。即可,

    只此一生,与子白头
  • 相关阅读:
    Big Data 應用:第二季(4~6月)台湾地区Game APP 变动分布趋势图
    大数据应用:五大地区喜新厌旧游戏APP类别之比较与分析
    Big Data應用:以"玩家意見"之數據分析來探討何謂"健康型線上遊戲"(上)
    Example:PanGu分詞系統-批次匯入新詞
    C#数据类型02--结构
    C#数据类型01--数组
    C#基础知识点
    陌生Layout属性
    LinearLayout(线性布局)
    Android--入门常识
  • 原文地址:https://www.cnblogs.com/Miss-Bueno/p/8072830.html
Copyright © 2011-2022 走看看