winapi — Как получить реальную высоту строки заголовка с помощью Stack Overflow

На самом деле я нахожу там такой же спрос Вот. Но я все еще нахожу некоторые проблемы, поэтому я должен опубликовать здесь еще одно сообщение.

Если я использую snipaste захватить панель инструментов. Я могу знать, что настоящая строка заголовка 28 как это
введите описание изображения здесь

Но если я использую метод в этом посте так:

#include<iostream>
#include <wtypes.h>
using namespace std;

int main() {
cout << GetSystemMetrics(SM_CYCAPTION) << endl;
return 0;
}

Я просто получу 23, Есть ли что-то, что я пропустил? Или 28 на самом деле содержат другую часть, кроме строки заголовка? Если я хочу найти реальную высоту строки заголовка с C ++. Как я могу сделать?

0

Решение

Не точно что вы спросили, но я часто нахожу этот полезный показатель:

int FindExtraWindowHeight(HWND h)
{
RECT w, c;
GetWindowRect(h, &w);
GetClientRect(h, &c);
return (w.bottom - w.top) - (c.bottom - c.top);
}

Разница между окном и клиентской областью. Так что это даст вам высоту строки заголовка + толщина границы.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]