Изменение размера бокового окна - PullRequest
0 голосов
/ 16 октября 2010

Есть ли способ создать дочернее окно с изменяемым размером только на правом краю, которое покрывает часть левой части родительского окна?Аналогично панели истории Firefox.

1 Ответ

0 голосов
/ 16 октября 2010

Нет способа сделать это одним ударом АФАИК. Тем не менее, вы можете создать дочернее окно как обычно и использовать GetWindowRect(), чтобы получить размеры ограничивающего прямоугольника (в данном случае нас интересуют верх, низ и справа от структуры RECT); затем перехватите сообщение WM_MOUSEMOVE и продолжайте отслеживать текущую координату мыши x & y из параметра lParam;

Если текущая позиция мыши находится справа от окна, вызовите LoadCursor() или LoadImage(), чтобы установить форму курсора на IDC_SIZEWE; затем используйте SetCapture() и ReleaseCapture(), чтобы прослушать событие перетаскивания мыши, и используйте SetWindowPos(), чтобы установить новый размер окна.

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