实际上我发现here的需求相同。但是我仍然发现了一些问题,所以我必须在这里发布另一个问题。
如果我使用snipaste来捕获工具栏。我可以知道这个真正的标题栏是28
但是如果我在这个帖子中使用这样的方法:
#include<iostream>
#include <wtypes.h>
using namespace std;
int main() {
cout << GetSystemMetrics(SM_CYCAPTION) << endl;
return 0;
}
我将获得23
。有没有我错过的东西?或者28
实际上包含标题栏以外的其他部分?如果我想用c ++找到标题栏的真实高度。我该怎么做?
答案 0 :(得分:0)
不是精确地您的要求,但是我经常发现这是一个有用的指标:
int FindExtraWindowHeight(HWND h)
{
RECT w, c;
GetWindowRect(h, &w);
GetClientRect(h, &c);
return (w.bottom - w.top) - (c.bottom - c.top);
}
窗口和工作区之间的区别。因此,这将为您提供标题栏高度+边框厚度。