Russian Qt Forum
Май 03, 2024, 11:47 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QDockedWidget... HELP!!!  (Прочитано 2710 раз)
Natalie
Гость
« : Март 07, 2006, 16:27 »

Есть два режима - Multiple mode и Docked mode.
Необходимо динамически переключаться между этими режимами.

Что я делаю: создаю нужные мне окна, показываю их (в Multiple mode). Далее заважу QMainWindow, куда пихаю мои окна (передаю в это окно УКАЗАТЕЛИ на созданные окна). Для каждого делаю это делаю таким образом:

  QDockWidget *dock;
  dock = new QDockWidget(tr("widget"),this);
  dock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
  dock->setWidget(_MyWidget);                                  //!!!!!!!!!!  <--
  addDockWidget(Qt::RightDockWidgetArea, dock);

При этом все проходит нормально.

Проблемы начинаются, когда пытаюсь переключиться обратно в Multiple mode. Думаю, главное окно (QMainWindow) при закрытии "уносит с собой в могилу" и все окна, содержащиеся в нем. Меня, естественно, это не устраивает. Просто QDockWidget *dock захватывает указатель, а потом его не отдает.  Грустный

Что же мне сделать, чтобы мои окошки (QWidget) не закрывались, а переходили в Multiple mode???
Должно быть что-то на подобие Designer в Qt (Edit->User Interface Mode)

Подскажите, пожааалуйста!

добавлено спустя 42 минуты:

 Мдаа...

Всего-то навсего нужно было каждому окну поставить в качестве parent NULL:
_MyWidget->setParent(NULL);

И все заработало!
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.041 секунд. Запросов: 20.