首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

Delphi 覆寫 CreateParams 動態調整視窗樣式 (如捲軸顯示/隱藏)

     編輯:Delphi

用途

CreateParams 是 TWinControl 虛擬方法,在視窗建立前調整 TCreateParams 結構 (對應 CreateWindowEx 參數),可動態增減 WS_VSCROLL, WS_HSCROLL, WS_BORDER 等樣式旗標。

範例:依條件顯示/隱藏垂直捲軸


procedure TMyControl.CreateParams(var Params: TCreateParams);
begin
  inherited CreateParams(Params);
  if IWantAScrollBar then
    Params.Style := Params.Style or WS_VSCROLL
  else
    Params.Style := Params.Style and not WS_VSCROLL;
end;

常用樣式旗標

注意

  • 必須先呼叫 inherited 取得基礎樣式,再修改。
  • 視窗建立後若需改變樣式,需用 SetWindowLong(Handle, GWL_STYLE, NewStyle) 並配合 SetWindowPos(..., SWP_FRAMECHANGED) 重繪。
  • Params.ExStyle 對應擴充樣式 (WS_EX_*)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
常數說明
WS_VSCROLL垂直捲軸
WS_HSCROLL水平捲軸
WS_BORDER細邊框
WS_THICKFRAME可調整大小邊框
WS_CAPTION標題列 (含 WS_BORDER + WS_DLGFRAME)
WS_CLIPCHILDREN裁剪子視窗繪圖區
WS_CLIPSIBLINGS裁剪同層視窗