Здравствуйте, rg45, Вы писали:
R>"gvozdok" <42528@users.rsdn.ru> сообщил/сообщила в новостях следующее: news:1776034@news.rsdn.ru...
>> Когда окно появляется на экране при разрешении 1024x768, то координаты его верхнего левого угла (144, 131). Когда окно появляется на экране при разрешении 800x600, то координаты его верхнего левого угла (32, 47). Как самому вычислить новые координаты окна при смене разрешения? Как это делает Windows? Как определить этоо коэффициент масштабирования?
R>При создании нового окна, в том случае, если его координаты не заданы явно, Windows исходя из размеров окна и экрана, по каким то своим соображениям устанавливает окну его положение на экране. Положение окна по умолчанию, на сколько известно мне, нигде не документировано и ничем не регламентировано, в одной Windows оно такое, в другой может быть другим . ИМХО не стоит даже заморачиваться на то, как это делает Windows. Лучше подойти к решению задачи с другой стороны: как тебе нужно, чтоб окно располагалось на экране? Данные которые понадобятся для решения этой задачи — размер окна, размер экрана, сообщение, о том, что разрешение экрана изменилось — все это в твоем распоряжении.
Есть API шная функция GetWindowRect. Возвращает "прямоугольник" окна