软件简介:
0 [- S% u/ ?9 y/ Y% i- }大家好,我是小鸟' J/ D. ^3 S4 k! }5 Q, @$ z0 q
大家在使用VB6.0在XP操作系统下生成的程序的一些按钮控件样式还是VB自身的老土样式,为什么在漂亮的XP系统下无法生成和他一样漂亮的界面呢?这需要一个manifest文件,熟悉这个文件格式的朋友可以手动生成这个文件,但不熟悉的怎么办呢?8 E+ s- b1 y6 z* F% y
今天在浏览黑鹰网站时看到了一片文章
8 G2 ^& p1 K5 n3 u6 w7 }8 x
, D1 y( N$ T7 O6 o. o7 ~1 TVB编程实现Windows XP风格的界面
* t7 d' L/ a6 R0 m: ^ Z) G/ I- B2 n9 m- [" [& B* S7 W7 J
http://www.3800hk.com/Article/cxsj/vb/jcjcvb/2007-04-02/Article_125990.html5 F% x& q# t( J* T+ [; f: ~
这是文章的地址
5 I" Z" Z& u. C( D我试了一下他所讲的方法并不成功+ A) K4 x0 q: { X% u6 {
所以在网上搜了一下相关资料,发现文章提供的代码出了点错误8 i' Q) m# e5 T. A6 w( Q
<?xml version=1.0 encoding=UTF-8 standalone=yes?>1 O( e p! f1 ^
<assembly xmlns=urn:schemas-microsoft-com:asm.v1 manifestVersion=1.0>! \- | ^8 ~* m' W/ Z( o
<assemblyIdentity
. L5 G0 z' F2 P: c- Vversion=1.0.0.01 I1 E1 \ o* h# R) T/ T: S7 t( B1 b
processorArchitecture=X86
9 B r" F8 ]. vname=CompanyName.ProductName.YourApp
% `; F0 n/ p! U6 atype=win32: a2 y* J& X% P; Z) W/ i; K( K
/>7 I' y4 G0 h! _- X0 f
<description>Your application description here.</description>6 s" u+ T. |) c1 Z) S
<dependency>& t; j5 c3 J$ v0 P5 e/ x9 r
<dependentAssembly>) k$ D0 R+ v [$ Z9 P
<assemblyIdentity
9 t* w: J! C* V: y1 Q type=win32! H% }; I4 j( y B
name=Microsoft.Windows.Common-Controls; O. |' _* W; Q' \
version=6.0.0.0
& ^* h* y: B6 h) ~- y processorArchitecture=X86
9 ^6 m! e4 F2 }' p5 @ publicKeyToken=6595b64144ccf1df/ Y( Q7 J( u2 R# f/ _
language=*
3 c# K# `( @' D; G/>$ y% j, b7 W, p$ T) z" X
</dependentAssembly>) @/ T$ e& ]. q2 l0 T" |6 ]& @
</dependency>( Y- @, n+ P. e
</assembly> & z" U6 J/ W2 X. k. n2 a+ |9 P
以上就是出错的代码,应该改为
; x+ x+ D0 a3 U- d( U/ W?xml version=1.0 encoding=UTF-8 standalone=yes?+ J% V) r1 Y4 q O# d& Y3 h4 z& n
assembly xmlns=urn:schemas-microsoft-com:asm.v1 manifestVersion=1.01 R v1 y/ t4 a S$ F( \" x, q
assemblyIdentity name=WindowsShell processorArchitecture=x86 version=5.1.0.0 type=win32/5 q( o2 q; p) x% D
descriptionWindows Shell/description; g. X8 {* e4 ^. P) ?" c
dependency! s% V% P3 B7 G. ^3 P! M- }, v
dependentAssembly
4 c$ s, z X9 k) ~' J assemblyIdentity/ A% f6 O0 ^. E9 Z5 k' h0 U
type=win32$ D" m/ G; T" U. h+ j! {1 \
name=Microsoft.Windows.Common-Controls# g! o+ b) U+ A4 T& w
version=6.0.0.0
k0 f) u6 ?% `- i processorArchitecture=x86
, b6 h: z" h" y$ g8 v2 g" d7 U publicKeyToken=6595b64144ccf1df1 g. C2 z5 k6 Y4 o- P
language=*
$ X2 M! P' z Y% ?" b /
% k$ c2 o M c# c' C, M9 m /dependentAssembly( K- \) a8 b3 O; d
/dependency$ N. g' `2 U& G" m5 `
/assembly1 j, z1 n' b/ ^: a) U- z
好了,现在,我就来编写一个vb程序来实现这个方法6 ]" M4 c* Q+ D0 f
大家看我操作
% }2 }& E' l3 y, V好了,界面设计好了,我们来写代码9 A2 O( u# B F% e+ s" ^- ~) P
保存一下: Q# }8 y E7 m6 D/ I6 M. W
程序设计好了
+ f; L7 @& Q* a8 _4 O" d我们来试试这个程序的效果
/ N" P* f) Z, o+ T O2 k" s现在就用这个程序来做实验1 N8 R( O* A7 G p( [0 f
不过要在这里写上必要的代码
" Z Q3 f9 ^& Z% {- Y不然就不能成功了
- y, y, O. Y6 P: R) @& QPrivate Declare Sub InitCommonControls Lib comctl32.dll ()+ B0 H0 h+ b i S1 ], Q2 h6 y
Private Sub Form_Initialize(): w) {5 @8 J6 A9 ~
InitCommonControls
8 g. p) T3 r% q2 y+ ]7 UEnd Sub
5 }/ z/ ~! L& U% C- ], B- h2 p0 v就是这个( ]; e6 X% A' M
如果程序是多窗口,可以把它声明在模块里9 \; P& d+ e: s, {9 a! s# q7 U
先在把它添加进去. q. f3 Q$ q% A5 @8 m
可以了
; i' L( V- W, F0 b' S5 z5 t) E我们来试试% O. M# D0 o+ s. h3 C
这是原来的程序界面3 g9 G9 R( H D/ Y6 F
看到了吧
+ u) p4 w* H2 C* Q0 v2 G! n前后效果查大了吧
! q8 f5 O1 y/ t& R) b b教程就到这里吧
2 f$ V0 f; x; h. }3 o4 @下载地址:
|