【搬运】VB6实现XP风格控件样式
2010-11-29 14:30
309 查看
VB6不支持XP风格? 我以前也是这么认为的,呵呵…… 在第一个加载的窗体中声明和引用下面这个API过程 Private Declare Sub InitCommonControls Lib "comctl32.dll" () Private Sub Form_Initialize() InitCommonControls End Sub 这样就可以调用XP风格了。 有两个方法。 一个是生成程序后,在程序目录下新建一个manifest文件,文件是一个XML格式的文本文件,可以直接用记事本写,具体代码如下: <?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="yourname" type="win32" /> <description>hello world.</description> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency> </assembly> 将其保存为 程序名.exe.manifest 文件就可以了。 比如你的程序名为 工程1.exe,那么将文件更名为 工程1.exe.manifest 这个方法可以给一些C++和Delphi程序套用XP样式,但是,直接给普通VB6程序使用该文件将会造成程序错误! 第二个方法是嵌入式,将XML信息嵌入程序的资源文件中。 打开资源文件管理器,不过我还是建议你使用第三方的RES资源管理器。 打开我们刚才的文件,将其资源ID号更改为24,将文件号更改为1,编译程序,完成! 同理,如果直接给未引用上面API过程的VB6程序使用该资源,也会造成程序无法执行。 当然,就算这样,生成的VB程序仍然是有副作用的,已知的几个BUG如下: 1.选择控件Option会在Frame控件内显示不正确,解决方法是在Frame控件内拖一个PictureBox控件,并将显示风格BorderStyle设置为0-None。 2.CommandButton、CheckBox、OptionButton控件将不会显示自定义颜色。 3.标准控件和Common Controls 5.0控件可以使用XP样式,Common Controls 6.0控件不行...-_-b ……………… 再怎么说,能让咱的VB6用上XP样式,已经算是很不容易了…… 将就将就吧…… 下载演示:已失效... |
相关文章推荐
- 程序中控件实现随xp风格的改变而改变
- VC6实现XP风格的控件效果(和VC2005一样)
- VC6 轻松实现 xp 样式控件
- VC 中实现 XP 风格的控件,简单实用的方法包你满意!
- 为WinXP系统下的MFC控件提供XP的风格样式(部分转载,忘记出处了)
- VC实现XP风格控件效果
- VC实现XP风格控件效果(转)
- VB6 IDE XP风格实现之见解
- 在DELPHI7中不使用任何第三方控件,实现放在工具栏上可拖动的XP风格菜单.
- 让在vc6创建的程序中,控件可以随xp风格的改变而变化,不用再程序中添加代码来自己实现~
- 用VB实现带图片的XP风格的按钮控件
- 如何使得.Net程序具有XP控件的样式风格
- (转)在DELPHI7中不使用任何第三方控件,实现放在工具栏上可拖动的XP风格菜单
- 让 VB6 开发的程序拥有视觉样式( XP 风格),VC++6.0 同样适用
- vc 实现xp风格控件
- msdn中 wpf serverlet asp.net 等等 下载各种控件样式 风格
- Material Design系列风格控件之(一)----AppBarLayout实现上滑隐藏ToolBar
- MFC 控件具有XP风格
- Android实现Material Design风格的设置页面(滑动开关控件)
- wince5 实现XP风格皮肤