|
" G& q4 J; b( K' \3 C% n3 b4 K
* Y. ?$ |6 i. Q# b windows在创建窗体时使用一个CreateWindowEx函数,通过传给这个函数的参数来确定窗口的样式。
( z7 }: u: H$ d; G5 @而CreateParams虚函数是VCL在创建窗口之前调用的,用来取得要创建的窗口的样式的及其它一些相关属性的(Params参数),这里先通过调用TCustomForm的CreateParams函数来取得标准的窗口属性,再通过Params.Style^=WS_CAPTION;把窗口样式里的标题栏属性去掉,函数执行之后呢,VCL就把这个参数传给CreateWindowEx函数,这样创建的窗口就没有标题栏了。
' s: H1 s& o3 }& R. \! t3 o假如form1是主窗口,form2是一个子窗口。在form2的单元里加入一个函数:) x, m7 M0 ^5 g+ R
void __fastcall TForm2::CreateParams(Controls::TCreateParams & Params)+ z7 p' ]7 K5 D$ L. l
{5 H: P) B" X. W T
//TOD Add your source code here
! W6 F/ g7 B7 j( `" h TCustomForm::CreateParams(Params);1 s3 W! R# b7 e( B5 E
Params.Style^=WS_CAPTION;
* s# |3 o* Z1 c) g} $ w& b! s4 U: a U/ I4 m2 V( [" w
头文件里这样加:! ]" u" [) h7 W& ~
public: // User declarations& @0 v2 B; i6 r4 s2 B6 y
0 t) T2 o, N9 ~7 r3 \* p9 F virtual void __fastcall CreateParams(Controls::TCreateParams & Params);
4 b) K M E7 I6 f3 D就OK了,
8 h* m) l+ r C
w* h$ r; @9 w; ? |