|
) y& b( |" c! M2 A- n $ \* K/ z2 n/ T; i7 w/ E5 O
windows在创建窗体时使用一个CreateWindowEx函数,通过传给这个函数的参数来确定窗口的样式。
6 r1 y, Q" E" l- ~/ V而CreateParams虚函数是VCL在创建窗口之前调用的,用来取得要创建的窗口的样式的及其它一些相关属性的(Params参数),这里先通过调用TCustomForm的CreateParams函数来取得标准的窗口属性,再通过Params.Style^=WS_CAPTION;把窗口样式里的标题栏属性去掉,函数执行之后呢,VCL就把这个参数传给CreateWindowEx函数,这样创建的窗口就没有标题栏了。 ' l' Y+ b- R! D# G$ \& F1 V
假如form1是主窗口,form2是一个子窗口。在form2的单元里加入一个函数:) s, n( ^! I" J( f6 ~, U
void __fastcall TForm2::CreateParams(Controls::TCreateParams & Params)4 G7 o! _( P8 ?' U
{
: u/ v+ p, n, I //TOD Add your source code here( {0 e& g7 V$ F: M3 M b
TCustomForm::CreateParams(Params);
" w% Q7 S) R9 z% F/ f* [0 S Params.Style^=WS_CAPTION;
7 ]& e, I5 R$ v" f/ b}
4 o$ B0 D6 ~% D1 t E8 k, ]7 {5 I( o+ x头文件里这样加:; k. [$ k. R( H3 M
public: // User declarations
' v+ B4 D2 w% ] $ Q; B- G2 H4 ~' L& }8 L
virtual void __fastcall CreateParams(Controls::TCreateParams & Params); ( g+ H. \5 }7 Q' @3 Z6 n
就OK了,- i) F; ^3 g3 n! l4 I5 K( \5 w3 U) F- A
- _3 I! {+ V% g( _# ]/ }
|