VC++.NET实现应用程序XP风格

  首先,我必须说明一下:以下说的XP风格程序并非可以运行在任何Win32平台上,而是在Windows XP下运行的。有的朋友可就纳闷了,任何在Windows XP下运行都有XP风格嘛,为何要花功夫去“实现”。


因为微软为Windows XP提供了Themes服务。Themes可以让程序具有“XP风格”,看起来更美观,因为微软更新了Comctl32.dll(ver 6.0)这个“XP风格”的控件。微软还为了保留传统的Windows界面风格,特地留下了Comctl32dll v5.8。有些朋友一定知道在VC7中建立MFC工程,程序会自动引入XP风格。VC6或者其他编译器呢?其实原理都一样的。首先建立一个文件,名为“.manifest”(是任何字符,manifest是扩展名。)

  用文本输入以下内容

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

保存以后,在编译器中导入此文件。资源类型是24(其实就是RT_MANIFEST),ID是1(必须)。若不能正常运行,请添加以下代码。

#pragma comment(lib,"comctl32.lib")
#include < commctrl.h>
//…在初始化处加上…
InitCommonControls


  然后编译则大功告成!

©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值