Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > вопрос по Toolbar, CDialogBar и CReBar


Автор: zoloto 5.12.2008, 18:05
Смотрите если мы в диалоговом окне создаем меню и создаем в нем дочерние диалоговое окно - то это дочерние диалоговое окошко в любом случае создастся под меню и при перетаскивании не будет на него наезжать. Вопрос: как также как стандартное меню закрепить эти дивайсы Toolbar, CDialogBar и CReBar ???   Так как дочерние окошко создается перекрывая их и при передвижении наезжает на них.

Автор: Earnest 8.12.2008, 10:55
Наверное, если напрячься, то можно понять, в чем там у тебя проблема.
Но, по хорошему, напрячься должен ты и объяснить проблему по-человечески.
Для начала сам прочти то, что написал, и попробуй понять.

Автор: zoloto 13.12.2008, 12:42
Пытаюсь объяснить попроще:
1.Создаем приложение Dialog based.
2.В диалоговом окошке которое у нас есть по умолчанию создаем дочерние диалоговое окно которое открыто по максимуму (занимает все пространство родительского окна).
3.Добавляем в родительское (основное) диалоговое окно меню (стандартное меню сверху окна).
4.Теперь при запуске проги видим что дочерние окно занимает уже не всю площадь родительского окна - так как сверху отображается меню, а дочерние окошко начинает отображается под меню и еще если мы пытаемся двигать дочерние окошко то оно никогда не наезжает на меню, а уходит можно сказать под него.
5.Добавляем в родительское окно Toolbar.
6.И теперь главный момент - при запуске проги дочерние окно создается ниже меню но не ниже Toolbar и при активации перекрывает Toolbar (можем это увидеть на присоединенном рисунке).

user posted image

7.Вопрос как сделать чтоб при добавление в основное окно Toolbar'а дочерние окно обходило его также как меню??

Автор: Earnest 15.12.2008, 16:10
Только руками. Меню отличается от тулбара: панель меню располагается в неклиентской области диалога, а тулбар - именно в клиентской. При автоматическом пересчете дочернее окно занимает всю клиентскую область, перекрывая другие дочерние окна (тулбар). 
Вывод: при вычислении размера-позии дочернего окна учитывай наличие тулбара.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)