Visual Studio 2008 Windows XP 风格的实现
2008-07-31 09:01
295 查看
Visual Studio 2008中VC Windows XP 风格的实现
[align=left] 一.概要Windows XP开创了一种全新的Windows用户界面(UI),这种用户界面给用户一种现代化的、超时髦的感受。Windows XP新创了闪亮的具备圆形边角的控件连同极富未来派气息的进度条等具备新风格的控件。
而现在的Visual Studio也具备了此类控件。那么研发者就想能否在自己研发的程式中使用这类超酷的控件呢。答案是肯定的,程式员所要做的仅仅是添加一些引用连同一个资源文档。本文就通过介绍一个实例向大家介绍如何在Visual C++下将控件的Windows XP风格应用到自己的程式中。
注:本文介绍的控件风格特性只能在Windows XP下的运用程式中实现。
二. 使用Manifest文档
假如您想在您的运用程式中运用Windows XP的外观效果,您必须给您的工程添加一个Manifest文档(在建立工程过程中用来确定资源的一个文档)。这个文档指明了在工程中应用版本为6.0的 Comctl32.dll文档(只要这个文档存在)。版本为6.0的Comctl32.dll文档包括了一些新的控件连同一些控件的新特性,他和以前版本的最大的差异就是他支持控件外观效果的改变。
不像以前的版本,版本为6.0的Comctl32.dll是不能够被重新发布的。您只能够在包含他的操作系统中使用他的动态连接库(DLL)。Windows XP既包含了版本为5.0的,又包含了版本为6.0的(在默认的情况下,运用程式是用版本为5.0的Comctl32.dll的)。在版本为6.0的 Comctl32.dll中,包含了用户控件和一般控件。您只要改变和这些控件相关的dll文档,就能够使他们呈现出Winodws XP的外观风格了。
为了和用户的电脑操作系统相协调,您必须在您的运用程式中建立一个Manifest文档来明确的指定其窗体控件使用的是版本为6.0的Comctl32.dll。该Manifest文档是个XML文档,他包含在您的程式中,作为一个资源,或是在可执行文档目录下的一个单独的文档。
[/align]
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="1.0.0.0"
processorArchitecture="X86"
name="ROGAN.HyperRIS.HyperRISClient"
type="win32"
/>
<description>HyperRISClient</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
</assembly>
三. 更改Stdafx.h文件
在"Stdafx.h"中
定义#define _WIN32_WINNT 0x0501 // Include Windows XP symbols
即可。
因此,为了使您的运用程式具备像Windows XP那样的外观效果,您必须:
1.建立一个Manifest文档,将版本为6.0的Comctl32.dll捆绑到您的运用程式中(下面的例子中的Manifest文档能够将该Comctl32.dll捆绑到任何用Visual Studio.Net建立的运用程式中)
2. 更改Stdafx.h文件
3.把这个资源(Manifest文档)添加到您的可执行文档并进行重建
相关文章推荐
- 关于使Visual Studio 2005/2008开发的程序具有XP风格的问题
- Visual Studio 2005和Visual Studio 2008 WEB开发时实现拖动控件放在绝对位置(所见即所得)
- 实现仿Visual Studio风格的控件DockPanel
- ASP.NET MVC学习笔记 -- NerdDinner实战1 -- 中文Visual Studio 2008的设置修改以实现复数表单数类名
- Visual Studio 2008 中使用插件实现Extjs提示的方法
- 如何在Visual Studio 2005或者Visual Studio 2008里实现拖动控件进行绝对定位?
- 如何编程实现向Visual Studio的Toolbox添加控件(VS 2003, VS 2005, VS 2008)
- 在Windows Xp上实现Ubuntu主题风格!
- Visual Studio 2008 对jQuery实现智能感知提示
- .Net下实现Windows XP风格界面程序
- 使用Visual Studio 2008实现用户注册页面
- 关于使Visual Studio 2005/2008开发的MFC程序具有XP风格的问题
- 通过Visual studio 2005 中的web.sitemap实现OUTLOOK风格的系统菜单
- VC程序中Windows XP风格程序界面的实现
- Visual studio 2008下用SWIG包裹C/C++代码给Perl调用(Windows XP)
- 通过Visual studio 2005 中的web.sitemap实现OUTLOOK风格的系统菜单
- Visual Studio 2008 对jQuery实现智能感知提示 转
- 第三篇:使用Visual Studio 2008实现基本的页面交互
- 关于使Visual Studio 2005/2008/2010开发的MFC程序具有XP风格的问题
- 正确实现Visual Studio 2008部署项目自动卸载