| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Системное программирование и WinAPI > поместить окно назад (ZORDER) |
| Автор: Zmeevic 21.1.2008, 15:11 |
| Вот такой вопрос: есть окно меню у него тень (падает влево-вниз), когда оно не помещается на экране с правой стороны, то оно показывается слева от предыдущего меню, и теперь тень попадает на меню, которое стоит левее, задача при выводе окна помещать его не сверху, а ниже предыдущего окна: SetWindowPos() с HWND_BOTTOM не помогает... надо что-то типа BringWindowToTop() только наоборот ... |
| Автор: BorisVorontsov 21.1.2008, 17:30 |
А ты ему не присваивай владельцем предыдущее |
| Автор: Zmeevic 21.1.2008, 18:42 | ||
у них одинаковый родитель
у всех окон подменю родителем выступает окно меню (MenuBar) <StyleMenuBar::pMenuBar->hMenuWND> поидее в данном случае SetWindowPos() должно работать... но не работает... Вызываем функцию SetWindowPos() с HWND_BOTTOM для окна, тогда в оконной процедуре этого окна, при обработке WM_WINDOWPOSCHANGING получив указатель на структуру WINDOWPOS по идее мы должны обноружить, что поле hwndInsertAfter должно быть равно HWND_BOTTOM, если логика правильная, то почему у меня hwndInsertAfter == 0 ??? |
| Автор: Zmeevic 22.1.2008, 15:55 |
| Пошел другим путем, все пред. окна = BringWindowToTop()... |