实现WindowsXP效果的界面


【实例说明】
    虽然WindowsXP的界面非常华丽。但是令人遗憾的是,我们用VB写的程序除了菜单和窗口的外观是XP风格外,其他控件还是一如既往的是普通风格。我想,有的程序在XP下有XP的风格,VB也一定有办法实现XP的风格。后来笔者在网上看到一篇介绍XML的文章,又在网上找到了一篇实现XP风格的文章,经过自己的实践,终于找到了VB程序实现XP风格的办法。

【编程思路】
    *.exe.manifest文件的使用。

【设计步骤】
    1.新建一个标准工程,创建一个新窗体,默认名为Form1。
    2.在窗体上放置一个CommandButton控件。

    3.源程序  [素材源程序下载]


①:在你的窗体加入代码

'声明API函数
Private Declare Sub InitCommonControls Lib "comctl32.dll" ()

Private Sub Form_Initialize()
        InitCommonControls
End Sub

②:建立一个和你的.exe同名的.exe.manifest文件(假如:如果你最后编译好的文件名为XP.exe,则建立一个文件名为XP.exe.manifest的文件),并且此文件必须存在于和你Exe文件的同一目录下。

以XP.exe为例,则这个XP.exe.manifest的文件的内容如下:

 

<?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="CompanyName.ProductName.YourApp"

type="win32"

/>

<description>Your application description here.</description>

<dependency>

<dependentAssembly>

<assemblyIdentity

type="win32"

name="Microsoft.Windows.Common-Controls"

version="6.0.0.0"

processorArchitecture="X86"

publicKeyToken="6595b64144ccf1df"

language="*"

/>

</dependentAssembly>

</dependency>

</assembly>

 

   
    将以上内容保存为XP.exe.manifest。并且和执行文件放在一个目录下。

    其实,不用.manifest文件也能使VB编写的程序具体XP风格的界面。
    具体做法就是把.manifest写成资源文件(大致内容并没有变,只是加上了资源文件头),并和程序一起编译,这样就相当于把.manifest文件和编译后的.exe文件合到了一起,在发布程序时就不用再带着.manifest文件了。