windows在創建窗體時使用一個CreateWindowEx函數,通過傳給這個函數的參數來確定窗口的樣式。
而CreateParams虛函數是VCL在創建窗口之前調用的,用來取得要創建的窗口的樣式的及其它一些相關屬性的(Params參數),這裡先通過調用TCustomForm的CreateParams函數來取得標准的窗口屬性,再通過Params.Style^=WS_CAPTION;把窗口樣式裡的標題欄屬性去掉,函數執行之後呢,VCL就把這個參數傳給CreateWindowEx函數,這樣創建的窗口就沒有標題欄了。
假如form1是主窗口,form2是一個子窗口。在form2的單元裡加入一個函數:
void __fastcall TForm2::CreateParams(Controls::TCreateParams & Params)
{
//TODO: Add your source code here
TCustomForm::CreateParams(Params);
Params.Style^=WS_CAPTION;
}
頭文件裡這樣加:
public: // User declarations
virtual void __fastcall CreateParams(Controls::TCreateParams & Params);
就OK了