Создаю SDI-приложение в VS.NET. Пытаюсь к окну CChildView приклеить свое дочернее окно, которое создается в другом потоке от HWND владельца (окна CChildView). Окно создается, но его закрывает окно CChildView. При этом мое окно доступно. Такое ощущение, что WM_PAINT посылается ему раньше, чем окну CChildView, пока его "таскаешь" мышью по экрану — отрисовывается — как только владелец перерисовывает себя — амба
И вторая связанная проблема. Если я зацикливаю основной поток, затыкается и второй. Но если создавать дочернее окно без владельца — все работает: один поток висит, другой функционирует.
Куда мне копать со всем этим счастьем? (ОС WinXP)
Здравствуйте, eazmard, Вы писали:
E>Создаю SDI-приложение в VS.NET. Пытаюсь к окну CChildView приклеить свое дочернее окно, которое создается в другом потоке от HWND владельца (окна CChildView). Окно создается, но его закрывает окно CChildView. При этом мое окно доступно. Такое ощущение, что WM_PAINT посылается ему раньше, чем окну CChildView, пока его "таскаешь" мышью по экрану — отрисовывается — как только владелец перерисовывает себя — амба
А есть уверенность в том, что WM_PAINT вообще доходит до дочернего окна при обновлении родительского?
Для проверки попробуй установить стиль родительского окна WS_CLIPCHILDREN.
А вообще стоит почитать
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/pantdraw_2s32.aspWBR, Dmitry