Бьюсь уже вторую неделю, никак не могу разобраться, помогите пожалуйста.
Итак, имею MDI-окно разделенное Splitter'ами на две половины.
Обе половины являются наследниками CView (например CTopView и CBottomView).
Я хочу на CBottomView поместить CToolBar или CDialogBar.
Для этого я в CBottomView::OnCreate делаю m_wndDialogBar.Create(...).
В результате при компиляции ошибок нет, при выполнении окно действительно
делится на две части, но DialogBar — отсутствует.
Искал в INet. В примерах ControlBar всегда накладывается на CFrameWnd, а не
на CView. Как быть?
05.06.03 10:20: Перенесено модератором из 'C/C++' — ПК
Здравствуйте, clark, Вы писали:
C>Бьюсь уже вторую неделю, никак не могу разобраться, помогите пожалуйста. C>Итак, имею MDI-окно разделенное Splitter'ами на две половины. C>Обе половины являются наследниками CView (например CTopView и CBottomView). C>Я хочу на CBottomView поместить CToolBar или CDialogBar. C>Для этого я в CBottomView::OnCreate делаю m_wndDialogBar.Create(...). C>В результате при компиляции ошибок нет, при выполнении окно действительно C>делится на две части, но DialogBar — отсутствует. C>Искал в INet. В примерах ControlBar всегда накладывается на CFrameWnd, а не C>на CView. Как быть?
Думаю, что это будет ну ОЧЕНЬ гемеррно
Может тебе подойдет такой вариант — создать тулбар и разместить в наиболее подходящнем месте по периметру фрейма.
Один из самых обычных и ведущих к самым большим бедствиям соблазнов есть соблазн словами: "Все так делают".
Лев Толстой
Здравствуйте, IvEv, Вы писали:
IE>Здравствуйте, clark, Вы писали:
C>>Бьюсь уже вторую неделю, никак не могу разобраться, помогите пожалуйста. C>>Итак, имею MDI-окно разделенное Splitter'ами на две половины. C>>Обе половины являются наследниками CView (например CTopView и CBottomView). C>>Я хочу на CBottomView поместить CToolBar или CDialogBar. C>>Для этого я в CBottomView::OnCreate делаю m_wndDialogBar.Create(...). C>>В результате при компиляции ошибок нет, при выполнении окно действительно C>>делится на две части, но DialogBar — отсутствует. C>>Искал в INet. В примерах ControlBar всегда накладывается на CFrameWnd, а не C>>на CView. Как быть?
IE>Думаю, что это будет ну ОЧЕНЬ гемеррно IE>Может тебе подойдет такой вариант — создать тулбар и разместить в наиболее подходящнем месте по периметру фрейма.
Так может Вам окно разбить сплиттером не на две, а на три части. И сделать один сплиттер неподвижным?
Здравствуйте, Vitaton, Вы писали:
V>Здравствуйте, IvEv, Вы писали:
IE>>Здравствуйте, clark, Вы писали:
C>>>Бьюсь уже вторую неделю, никак не могу разобраться, помогите пожалуйста. C>>>Итак, имею MDI-окно разделенное Splitter'ами на две половины. C>>>Обе половины являются наследниками CView (например CTopView и CBottomView). C>>>Я хочу на CBottomView поместить CToolBar или CDialogBar. C>>>Для этого я в CBottomView::OnCreate делаю m_wndDialogBar.Create(...). C>>>В результате при компиляции ошибок нет, при выполнении окно действительно C>>>делится на две части, но DialogBar — отсутствует. C>>>Искал в INet. В примерах ControlBar всегда накладывается на CFrameWnd, а не C>>>на CView. Как быть?
IE>>Думаю, что это будет ну ОЧЕНЬ гемеррно IE>>Может тебе подойдет такой вариант — создать тулбар и разместить в наиболее подходящнем месте по периметру фрейма.
V>Так может Вам окно разбить сплиттером не на две, а на три части. И сделать один сплиттер неподвижным?
Если на сплиттер кидать тулбар, то лучше юзать не CToolBar, а CToolBarCtrl.
Один из самых обычных и ведущих к самым большим бедствиям соблазнов есть соблазн словами: "Все так делают".
Лев Толстой
Здравствуйте, clark, Вы писали:
C>Бьюсь уже вторую неделю, никак не могу разобраться, помогите пожалуйста. C>Итак, имею MDI-окно разделенное Splitter'ами на две половины. C>Обе половины являются наследниками CView (например CTopView и CBottomView). C>Я хочу на CBottomView поместить CToolBar или CDialogBar. C>Для этого я в CBottomView::OnCreate делаю m_wndDialogBar.Create(...). C>В результате при компиляции ошибок нет, при выполнении окно действительно C>делится на две части, но DialogBar — отсутствует. C>Искал в INet. В примерах ControlBar всегда накладывается на CFrameWnd, а не C>на CView. Как быть?
Здравствуйте, Serguei666, Вы писали: S>Посмотрите на этот пример: S>http://www.codeguru.com/splitter/splittertoolbar.shtml S>Возможно, это то, что вам нужно
Судя по картинке это действительно то, что нужно. Я уже встречал эту ссылку.
Но, пример слабовато описан. Например, что такое m_parentSplitter, CBarView, CTheView.
Кароче, непонятно что конкретно имел в виду автор.
Здравствуйте, clark, Вы писали:
C>Бьюсь уже вторую неделю, никак не могу разобраться, помогите пожалуйста. C>Итак, имею MDI-окно разделенное Splitter'ами на две половины. C>Обе половины являются наследниками CView (например CTopView и CBottomView). C>делится на две части, но DialogBar — отсутствует.
Сделай одно из окон на основе CFormView и кидай на него что угодно