Изменение размера окна работает неправильно ⇐ C++

Программы на C++. Форум разработчиков
Anonymous
Изменение размера окна работает неправильно

Сообщение Anonymous »

У меня есть диалоговое приложение MFC. Я хочу изменить размер диалогового окна на размер в расчетных единицах. Я пытаюсь преобразовать его в пиксели, но, похоже, не получается. Соотношение между единицами дизайна и пикселями меняется после изменения размера — см. примечания в коде.
Этот код у меня есть в OnInitDialog():
RECT rect;
GetWindowRect(&rect); //Window in dialog units has 300x200,, 466x364 in pixels
//I want to resize window to 200x100 in dialog units
RECT transRect{ 0,0,200,100 };
MapDialogRect(&transRect);
SetWindowPos(0, 0, 0, transRect.right, transRect.bottom, SWP_NOMOVE | SWP_NOZORDER);
GetWindowRect(&rect); //here we are checking the size of window - it is not in accordance with my idea - the scale of previous and current sizes is not rigth
// it is - 300 x 163 in pixels, but I expect 310 x 182


Подробнее здесь: https://stackoverflow.com/questions/790 ... k-properly

Вернуться в «C++»