crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Как подружить wxRibbonBar и плавающие окна wxAui
Гость_msn_*
сообщение 19.10.2010, 16:18
Сообщение #1





Гости








    


Привет Всем!
Проблема в следующем:
На wxFrame есть wxRibbonBar.
Он вертикальным сайзером помещен в верхнюю часть фрейма.
Нужно добавить wxTreeCtrl и wxAuiNotebook как плавающие окна.
Для размещения использую wxAuiManager.
При попытке сделать это рушится wxRibbonBar.
Вот кусочек кода:
class MainFrame: public wxFrame
{
    wxAuiManager _Manager;
    wxRibbonBar* _StdToolBar;
    wxTreeCtrl* _InfoTree;
    wxAuiNotebook* _Notebook;  

public:
    MainFrame()
        : wxFrame(NULL)
    {
        // Создать wxRibbonBar
        _StdToolBar = new wxRibbonBar(this);
        new wxRibbonPage(_StdToolBar, wxID_ANY, wxT("Examples"));
        new wxRibbonPage(_StdToolBar, wxID_ANY, wxT("QQQ"));
        _StdToolBar->Realise();
        wxSizer* s = new wxBoxSizer(wxVERTICAL);
        s->Add(_StdToolBar);
        SetSizer(s);

       _Manager.SetManagedWindow(this);

       _Notebook = new wxAuiNotebook(this);
        wxPanel* Page1 = new wxPanel(_Notebook, wxID_ANY);
        wxPanel* Page2 = new wxPanel(_Notebook, wxID_ANY);
        _Notebook->AddPage(Page1, _("Page1"));
        _Notebook->AddPage(Page2, _("Page2"));

       _InfoTree = new wxTreeCtrl(this);

        _Manager.AddPane(_Notebook, wxAuiPaneInfo().CenterPane());
        _Manager.AddPane(_InfoTree, wxAuiPaneInfo().Left().Layer(1));
        _Manager.Update();
     }
   // ...
};

Что я делаю неправильно?
Заранее спасибо.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 25.11.2024, 1:24