标题栏的坐标

时间:2013-11-11 18:07:03

标签: vb.net windows

我只是想知道是否有人知道标题栏的坐标是什么。我需要绘制一个与标题栏大小相同的矩形,但我不知道标题栏本身的确切大小。

2 个答案:

答案 0 :(得分:1)

你可能不喜欢这个,因为它涉及凌乱的hwnds但是你应该能够用旧的win32 api调用来做,特别是:

1)调用GetDesktopWindow以查找父母的父母

GetDestopWindow http://msdn.microsoft.com/en-us/library/windows/desktop/ms633504(v=vs.85).aspx

2)然后使用GetWindow(导航到标题栏窗口) http://msdn.microsoft.com/en-us/library/windows/desktop/ms633515(v=vs.85).aspx

3)最后在标题栏hwnd(句柄)上输入GetWindowRect。 http://msdn.microsoft.com/en-us/library/windows/desktop/ms633519(v=vs.85).aspx

如果要查找标题栏大小的窗口是您可以控制的表单的一部分,则可以使用其句柄属性和侧步骤#1,并在步骤#2中使用该表单作为开始。

答案 1 :(得分:1)

自:

How to get the size of a Winforms Form titlebar height?

Rectangle screenRectangle = RectangleToScreen(this.ClientRectangle);

int titleHeight = screenRectangle.Top - this.Top;

这可以为您提供您需要的东西。