Delphi里如何获取窗口边框的宽度和标题栏的高度?

问答知识库用户 |浏览301次
收藏|2014/05/17 22:00
如题,因为Win 7和XP下面的边框宽度和标题栏的高度是不一样的,怎么样才可以去动态获取呢?

满意回答

2014/05/17 22:00

方法一(通过 Width、ClientWidth 推算):
var
  frame,caption: Integer;
begin
  frame := (Width - ClientWidth) div 2;
  caption := Height - ClientHeight - frame * 2;
  ShowMessageFmt('边框宽: %d; 标题高: %d', [frame,caption]); {边框宽: 4; 标题高: 26}
end;

方法二(用 GetSystemMetrics 函数获取):
var
  frame,caption: Integer;
begin
  frame := GetSystemMetrics(SM_CXFRAME);
  caption := GetSystemMetrics(SM_CYCAPTION);
  ShowMessageFmt('边框宽: %d; 标题高: %d', [frame,caption]); {边框宽: 4; 标题高: 26}
end;
来自:http://www.cnblogs.com/del/archive/2008/12/03/1178984.html

热心网友

其他回答(0)
0人关注该问题
待解决问题



+1
 加载中...