VCL 中的 Windows API 函式(4): AdjustWindowRectEx

weixin_34279184發表於2014-07-15
AdjustWindowRectEx 用在了 Forms、DBCtrls 單元.

AdjustWindowRectEx 可以根據視窗樣式獲取的邊緣尺寸.

測試:
var
  R: TRect;
begin
  SetRect(R, 0, 0, 0, 0); {此矩形不是全域性變數, 需要初始為空}
  AdjustWindowRectEx(R,                                 {矩形結構承載返回值}
                     GetWindowLong(Handle, GWL_STYLE),  {視窗樣式}
                     False,                             {有無選單}
                     GetWindowLong(Handle, GWL_EXSTYLE) {視窗擴充套件樣式}
                     );

  ShowMessageFmt('%d,%d,%d,%d',[R.Left, R.Top, R.Right, R.Bottom]);

  {結果是: -4,-30,4,4}
  {說明視窗變寬是 4, 標題欄高度是 30}

  {如果指定為有選單; 結果是: -4,-50,4,4; 說明選單高度是 20}
end;

相關文章