Сохранить и восстановить позицию Aero Snap в Windows 7 - PullRequest
11 голосов
/ 03 декабря 2011

Допустим, у меня есть окно, и я хочу сохранить его положение при закрытии окна и восстановить его при повторном открытии окна.Типичный способ сделать это - вызвать GetWindowPlacement / SetWindowPlacement.Это позволяет запомнить положение и развернутое / свернутое состояние.

В Windows 7 вы можете закрепить окно сбоку экрана, используя функцию «Aero Snap» .Мой вопрос заключается в том, как сохранить и восстановить окна, которые были «Snapped», чтобы вы могли восстановить состояние «Snap».GetWindowPlacement / SetWindowPlacement не решает эту проблему (насколько мне известно), и я не видел ни одного API «Snap» в Windows 7.

Здесь есть похожий вопрос Как определить размер окна, измененного размераWindows7 , но в этом случае кажется, что OP просто хотел позицию восстановления, а не состояние «Snap».

1 Ответ

5 голосов
/ 28 сентября 2012

Обходной путь должен вызвать GetWindowRect(), чтобы получить фактические координаты окна и скопировать их по неправильным координатам в WINDOWPLACEMENT::rcNormalPosition.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...