![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Royan |
|
|||
|
Dreamer ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1708 Регистрация: 14.9.2002 Где: Лондон Репутация: нет Всего: 15 |
Кто-нибудь сталкивался с тем, что после разбиения статус бара на несколько частей, а потом сворачивания и разворачивания окна все деления пропадают. То есть проблемы восстановить деления после того как окно развернуто у меня нет, вопрос почему все пропадает...:/
-------------------- Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 25 Всего: 232 |
А "основное" деление (где текст) остаётся ? Имхо, может быть сам статусбар криво восстанавливается (не обрабатывает WM_SIZE ?..)
-------------------- ![]() |
|||
|
||||
| Royan |
|
|||
|
Dreamer ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1708 Регистрация: 14.9.2002 Где: Лондон Репутация: нет Всего: 15 |
Я думаю все слышали великое твоерение Queen - A kind of magic... вобщем все, что я сделал это я в обработчике WM_SIZE добавил инструкцию для случая когда окно свернуто, и теперь глюк исчез...
Вот только мне интересно, а можно ли поймать сообщение WM_SIZE для статус бара? Ведь насколько я знаю для всех предопределннаых пользователем или встроенных оконных компонент (классов) существует сообщение WM_COMMAND, в случае со статус баром я его обрабатываю и получаю указатель на струтуру LPNMMOUSE, которая содержит инфу только о всяких нотификациях... а то что же приходиться для каждой компоненты на которую вляет WM_SIZE, вызывать соответствующий обработчик внутри обработчика WM_SIZE основного окна? -------------------- Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь |
|||
|
||||
| AndyY |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.5.2004 Где: СПб Репутация: 2 Всего: 4 |
Royan
WM_SIZE, как и любое другое сообщение, можно поймать субклассом окон. HWND hwnd_status мы конечно знаем. WNDPROC *pold = ::GetWindowLong( hwnd_status, GWL_WNDPROC ); ::SetWindowLong( hwnd_status, GWL_WNDPROC, (long)subclassed_proc ); subclassed_proc представляет из себя функцию окна такого плана LRESULT subclassed_proc( HWND h, UINT m, WPARAM w, LPARAM l ) { if( m == WM_SIZE ) { ...//do something } return CallWindowPRoc( pold, h, m, w, l ); } |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |