`
zhangziyueup
  • 浏览: 1165797 次
文章分类
社区版块
存档分类
最新评论

VB程序实现WindowsXP效果的界面!

 
阅读更多

虽然WindowsXP的界面非常华丽。但是令人遗憾的是,我们用VB写的程序除了菜单和窗口的外观是XP风格外,其他控件还是一如既往的是普通风格。我想,有的程序在XP下有XP的风格,VB也一定有办法实现XP的风格。后来笔者在网上看到一篇介绍XML的文章,又在网上找到了一篇实现XP风格的文章,经过自己的实践,终于找到了VB程序实现XP风格的办法。为了使其他的网友不至于走像我这样的多的弯路,将此办法写出来,与大家共同提高!!
具体的实现方法如下:
①:在你的窗体加入代码。如果是多个窗口,可以将此代码放到模块中。

代码如下:
'声明API函数
Private Declare Sub
InitCommonControls Lib "comctl32.dll" ()
Private Sub
Form_Initialize()
InitCommonControls
End Sub
注意:千万不要在Form_load()事件下写InitCommonControls这句话,否则你的窗体会启动不了。(不要怪我没告诉你啊~~~~)
 
②:建立一个和你的.exe同名的.exe.manifest文件(假如:如果你最后编译好的文件名为WindowXPStyle.exe,则建立一个文件名为WindowXPStyle.exe.manifest的文件),并且此文件必须存在于和你Exe文件的同一目录下。
 
以WindowXPStyle.exe为例,则这个WindowXPStyle.exe.manifest的文件的内容如下:

version="1.0.0.0"
processorArchitecture="X86"
name="CompanyName.ProductName.YourApp"
type="win32"
/>
Your application
description here.
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
 
将以上内容保存为WindowXPStyle.exe.manifest。并且和执行文件放在一个目录下(一定要记住)。

到此为止,我们的程序已经完成,不过在VB的设计环境下运行是看不到XP效果的。必须编译成可执行文件运行才可以。(因为这个我试了不知多少遍,以为VB程序就是实现不了XP效果呢~~,没想到必须编译成执行文件才可以)。
运行效果如下图所示:

相信大家也看到了不足之处,就是放在FRAME控件中的单远按钮有些“麻烦”!为了解决此问题,可以将单选按钮放在PICTURE控件中(以PICTURE控件作为容器),再将PICTURE控件放在FRAME控件中,就可以了。 

常见问题和注意事项

由于VB6自身的原因,Windows XP再一次给我们留了一些难题:

一、工具栏问题:工具栏控件一定要用Microsoft Windows Common Controls 5.0,而不要用Microsoft Windows Common Controls 6.0。因为此InitCommonControls API函数是位于comctl32.dll(Microsoft Windows Common Controls 5.0控件的动态链接库中)。
二、图形风格按钮的问题:很遗憾,我们不能再使用Graphical风格的命令按钮(即Style=1的命令按钮控件)了。因为一旦将命令按钮的Style属性设为1,那么它将失去Windows XP风格。
只要注意以上几点,并采取相应的措施,VB编写的程序在Windows XP中看上去还是很华丽的!如下图所示:

注:其它语言写的程序也是一样,实现起来不会有VB这么多的问题。如DELPHI、VC等,连API函数都可以直接使用,不用事先声明。相对来说更简单!


在看完《VB程序实现WindowsXP效果的界面》一文后,感觉非常好,用VB也能做出XP风格的界面。

但是有一个可能让大家都觉得不太舒服或者说很累赘的地方。就是在《VB程序实现WindowsXP效果的界面》一文的具体实现方法的第2点里,说“建立一个和你的.exe同名的.exe.manifest文件(假如:如果你最后编译好的文件名为WindowXPStyle.exe,则建立一个文件名为WindowXPStyle.exe.manifest的文件),并且此文件必须存在于和你Exe文件的同一目录下。”大家是否觉得这样做有些奇怪呢,难道用VB实现XP风格的界面就这样麻烦吗?别的程序也没见过还带着什么.manifest文件啊?

是的,采用.manifest文件确实能达到效果,但也给发布程序带来了不便,因为总要在安装包中带上这个文件。其实,不用.manifest文件也能使VB编写的程序具体XP风格的界面。

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

分享到:
评论

相关推荐

    纯VB代码实现Windows XP风格的窗口效果.rar

    纯VB代码实现Windows XP风格的窗口效果,可以看成是一个Windows XP 风格窗体生成器,允许您在VB下生成的程序因为插入manifest文件而同样有XP一样的漂亮界面,manifest文件是使用在 C 程序下,但因为微软的Visual ...

    VB使用manifest 、Res文件实现win7风格的窗体界面

    VB用两种方法实现win7风格的窗体界面,一种是使用manifest 文件实现,另一种是使用Res资源文件实现,XP风格的manifest文件和win7风格的manifest文件不同,请不要混用,另外请使用5.0版的Microsoft.Windows.Common-...

    vb编写的outlook外观控件

    本控件运行时,可以显示多个折叠菜单,并且只有一个处于显示状态,其他处于折叠状态。...每个当前菜单下的子菜单采用气泡式显示方式,类似于...本控件不附带VB例程源代码(源程序代码),简单修改即可适合您的使用。

    VB日历控件,Windows风格.rar

    VB日历控件,Windows风格,Xp系统风格的日历选取控件,方便用户选择日期时间的时候用,如果你想在你的VB程序中使用日历控件,而又不想使用微软附带的控件,请试试这个控件,支持XP风格的可视界面。

    Office2007界面控件

    Office2007、windows xp,widows 7 界面控件,用于VB开发的程序,可以变成漂亮的界面!

    VB仿Windows XP按钮风格的计算器

    内容索引:VB源码,算法相关,计算器,算法,仿XP 这同样是一款功能一般的VB计算器程序源码,界面仿Windows XP按钮风格,除了进行四则运行外,仿XP按钮是它的特色,其它地方没有什么特别的,希望为Vb爱好者提供一份学习...

    VB模仿Media Player10音乐播放器界面的源程序

    内容索引:VB源码,界面编程,界面控件 这是用VB程序模仿的Windows Media Player10音乐播放器的UI界面,看着真漂亮,上图示,不过用到的控件也不少,像SIJO Soft.ocx、TAB选项卡控件、XP_ProgressBar XP风格进度条控件...

    VB免费开源界面换肤控件NiceForm及实例大全.rar

    VB免费开源界面控件NiceForm Control及实例大全,支持换肤功能的VB界面库,自带了丰富的实例,你可通过本资源包快速美化你的VB应用程序界面,使用密码:llcyw13931137599。  关于用过NiceForm试用版的用户,重新...

    Windows XP/OFFICE菜单界面控件 v1.0源码

    这个绝对很好用,很多菜单源码控件均出自这一个。用上它,会给你的程序更添一点专业水平,熟能生巧,很多的菜单都可用这个控件...

    Windows风格的日期选择控件Vb版源码.rar

    一款Windows风格的日期选择控件Vb版源码,如果你想在你的程序中使用日历控件,而又不想使用微软附带的控件,请试试这个控件,他支持XP风格的可视界面。具体来说,是一款和Windows XP系统风格十分相似的日历选择控件...

    vb BSE 控件(包括实例,使用方法)

    想在你的程序中打造类似Windows XP、Java、Flat风格的按钮吗?只要在你的程序中加上BSE控件,简简单单的一行代码,就可以轻松实现多达16种风格的按钮,完全使你抛弃了繁杂的代码!下面我们就结合一个实例来说明使用...

    界面开发(c++ 、.net)

    7.SKINSE界面库支持SDI、MDI等界面框架,支持20余种界面控件,完整兼容window 2000、window2003、window XP、vista、window7当前的主流操作系统。并且支持window平台的VC、.NET、VB6、Delphi、C++ Builder、Power...

    VB msdxm.ocx开发的播放器程序.rar

    VB使用msdxm.ocx内核开发的播放器程序,从界面上来看,和以前Windows XP中经典模式下的Windows MediaPlayer功能相似,功能就不一一列举了,只要Windows自带播放器支持播放的功能和格式,这一个程序基本都支持。...

    Windows XP/OFFICE菜单界面控件 v1.0

    内容索引:VB源码,控件组件,界面控件,OFFICE菜单。仿Windows 这个绝对很好用,很多菜单源码控件均出自这一个。用上它,会给你的程序更添一点专业水平,熟能生巧,很多的菜单都可用这个控件来完成。

    用VB语言编写的一个提示小程序(屏草幕保护功能

    用VB语言编写的一个提示小程序(屏草幕保护功能,关机提示支持WINDOWSXP系统的自动关机功能和光盘提示功能,支持显示时间与更改系统时间功能超小动画界面 超小动画界面)

    色环电阻识别小程序V1.0--

    本程序编程环境:windowsXP+VB6.0 如果无法正常使用,请您在“百度”下载VB6运行库 弱电之家原创软件--色环电阻识别小程序 请大家测试使用,如果有问题和错误,请直接告之我,谢谢! 本程序下载地址:...

    仿XP风格界面的好友管理器VB源代码

    内容索引:VB源码,数据库应用,仿XP,好友管理器,通讯录 仿XP风格界面的好友管理器VB源代码,属一个数据库程序,界面上用了VsNetMenu.ocx控件,使风格变以为Windows XP风格,本程序具备添加、删除、修改好友资料,备份...

    VB开发的进程暂停小工具

    自己使用VB开发的进程暂停和再开程序,受到codeproject上的一个项目pausep的启发,那个项目是C++的。这个是用VB开发的,只用了标准控件所以界面有点土。 这个工具可以帮助你暂停某个耗费资源的进程--原理是枚举其...

    软件加密技术内幕 软件加密技术内幕

    第1章 PE文件格式深入研究 1.1 PE文件格式格式纵览 ...8.7 VB程序图形界面(GUI)解读 8.8 VB程序执行代码研究 8.9 我们的工具 8.10 VB程序保护篇 附录A 在Visual C++中使用内联汇编 附录B 在Visual Basic中使用汇编

    Codejock Suite Pro试用版:一款功能强大的用于VBVB.NET下的用户界面套包产品

    Codejock Suite Pro是一款ActiveX/COM控件集,可为Windows程序员提供一套美观的用户界面控件,从而使您的应用程序具有专业的、现代感的外观。有了Xtreme Suite Pro,您可以创建企业级的,结合全套高度定制化用户界面...

Global site tag (gtag.js) - Google Analytics