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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как в MDI окне сделать панель с отображением октрытых окон.  (Прочитано 2564 раз)
maks
Гость
« : Март 25, 2009, 15:50 »

Добрый день.
У мнея такой вопрос.
Надо в MDI окне сделать панеь рядом со статус баром в которой отображались бы название окон которые в данный момент открыты в в MDI окне. Названия эти должны быть кликабельны для перехода на выбранное окно.
Как такое сделать?
В какую сторону копать?
Записан
miha-ha
Гость
« Ответ #1 : Март 25, 2009, 16:05 »

Код:
 
void MainWindow::updateWindowMenu()
 {
     windowMenu->clear();
     windowMenu->addAction(closeAct);
     windowMenu->addAction(closeAllAct);
     windowMenu->addSeparator();
     windowMenu->addAction(tileAct);
     windowMenu->addAction(cascadeAct);
     windowMenu->addSeparator();
     windowMenu->addAction(nextAct);
     windowMenu->addAction(previousAct);
     windowMenu->addAction(separatorAct);

     QList<QMdiSubWindow *> windows = mdiArea->subWindowList();
     separatorAct->setVisible(!windows.isEmpty());

     for (int i = 0; i < windows.size(); ++i) {
         MdiChild *child = qobject_cast<MdiChild *>(windows.at(i)->widget());

         QString text;
         if (i < 9) {
             text = tr("&%1 %2").arg(i + 1)
                                .arg(child->userFriendlyCurrentFile());
         } else {
             text = tr("%1 %2").arg(i + 1)
                               .arg(child->userFriendlyCurrentFile());
         }
         QAction *action  = windowMenu->addAction(text);
         action->setCheckable(true);
         action ->setChecked(child == activeMdiChild());
         connect(action, SIGNAL(triggered()), windowMapper, SLOT(map()));
         windowMapper->setMapping(action, windows.at(i));
     }
 }
а вообще копать в сторону документации QT Улыбающийся
Записан
spirit
Гость
« Ответ #2 : Март 25, 2009, 16:13 »

есть реализация в Qt Solutions, называется Window Menu. см. тут.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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