|
+ b5 s% G% r3 V7 {% E, i, p
; R) K4 }2 |7 O' J1 |1 M- s windows在创建窗体时使用一个CreateWindowEx函数,通过传给这个函数的参数来确定窗口的样式。7 x- \/ m% h2 e
而CreateParams虚函数是VCL在创建窗口之前调用的,用来取得要创建的窗口的样式的及其它一些相关属性的(Params参数),这里先通过调用TCustomForm的CreateParams函数来取得标准的窗口属性,再通过Params.Style^=WS_CAPTION;把窗口样式里的标题栏属性去掉,函数执行之后呢,VCL就把这个参数传给CreateWindowEx函数,这样创建的窗口就没有标题栏了。
- F( x" d% T' n, V3 Z! J: q假如form1是主窗口,form2是一个子窗口。在form2的单元里加入一个函数:
& N8 J2 \6 p% I) z% A, ?$ Avoid __fastcall TForm2::CreateParams(Controls::TCreateParams & Params)
0 j! {8 t3 m) M% \* ^{' z5 u$ G* w F0 I0 M6 d
//TOD Add your source code here
r8 }: a' E& Q1 D TCustomForm::CreateParams(Params);8 q3 j* u* V! X
Params.Style^=WS_CAPTION;+ d, B% Q& S8 v% o% Z( p
} 0 q# e9 X! M6 y) h% u- y
头文件里这样加:0 V8 @# E9 @1 f8 y, c2 }& W; i
public: // User declarations7 W n' e2 n8 m1 T
, {- }5 b, H8 ^; B; e6 ?9 t
virtual void __fastcall CreateParams(Controls::TCreateParams & Params);
$ d% [! m4 W. d0 ` V就OK了,2 M7 v9 d2 e/ ^
- J3 }& }$ X; R
|