Spec-Zone.ru › Qt 6.0

Класс QMdiArea

Виджет QMdiArea предоставляет область для отображения окон MDI. Подробнее...

Заголовок: #include <QMdiArea>
CMake: find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Наследуется от: QAbstractScrollArea
  • Список всех членов, включая унаследованные

Типы

перечисление AreaOption { DontMaximizeSubWindowOnActivation }
флаги AreaOptions
перечисление ViewMode { SubWindowView, TabbedView }
перечисление WindowOrder { CreationOrder, StackingOrder, ActivationHistoryOrder }

Свойства

  • activationOrder : WindowOrder
  • background : QBrush
  • documentMode : bool
  • tabPosition : QTabWidget::TabPosition
  • tabShape : QTabWidget::TabShape
  • tabsClosable : bool
  • tabsMovable : bool
  • viewMode : ViewMode

Открытые функции

QMdiArea(QWidget *parent = nullptr)
virtual ~QMdiArea()
QMdiArea::WindowOrder activationOrder() const
QMdiSubWindow * activeSubWindow() const
QMdiSubWindow * addSubWindow(QWidget *widget, Qt::WindowFlags windowFlags = Qt::WindowFlags())
QBrush background() const
QMdiSubWindow * currentSubWindow() const
bool documentMode() const
void removeSubWindow(QWidget *widget)
void setActivationOrder(QMdiArea::WindowOrder order)
void setBackground(const QBrush &background)
void setDocumentMode(bool enabled)
void setOption(QMdiArea::AreaOption option, bool on = true)
void setTabPosition(QTabWidget::TabPosition position)
void setTabShape(QTabWidget::TabShape shape)
void setTabsClosable(bool closable)
void setTabsMovable(bool movable)
void setViewMode(QMdiArea::ViewMode mode)
QList<QMdiSubWindow *> subWindowList(QMdiArea::WindowOrder order = CreationOrder) const
QTabWidget::TabPosition tabPosition() const
QTabWidget::TabShape tabShape() const
bool tabsClosable() const
bool tabsMovable() const
bool testOption(QMdiArea::AreaOption option) const
QMdiArea::ViewMode viewMode() const

Переопределённые открытые функции

virtual QSize minimumSizeHint() const override
virtual QSize sizeHint() const override

Открытые слоты

void activateNextSubWindow()
void activatePreviousSubWindow()
void cascadeSubWindows()
void closeActiveSubWindow()
void closeAllSubWindows()
void setActiveSubWindow(QMdiSubWindow *window)
void tileSubWindows()

Сигналы

void subWindowActivated(QMdiSubWindow *window)

Переопределённые защищённые функции

virtual void childEvent(QChildEvent *childEvent) override
virtual bool event(QEvent *event) override
virtual bool eventFilter(QObject *object, QEvent *event) override
virtual void paintEvent(QPaintEvent *paintEvent) override
virtual void resizeEvent(QResizeEvent *resizeEvent) override
virtual void scrollContentsBy(int dx, int dy) override
virtual void showEvent(QShowEvent *showEvent) override
virtual void timerEvent(QTimerEvent *timerEvent) override
virtual bool viewportEvent(QEvent *event) override

Защищённые слоты

virtual void setupViewport(QWidget *viewport) override

Подробное описание

Функции QMdiArea по существу работают как менеджер окон для окон MDI. Например, он рисует управляемые им окна на себе и организует их в каскад или в виде плиток. QMdiArea обычно используется в качестве центрального виджета в QMainWindow для создания MDI-приложений, но также может быть размещён в любом макете. Следующий код добавляет область в главное окно:

    QMainWindow *mainWindow = new QMainWindow;
    mainWindow->setCentralWidget(mdiArea);

В отличие от менеджеров окон для окон верхнего уровня, все флаги окон (Qt::WindowFlags) поддерживаются QMdiArea, при условии что флаги поддерживаются текущей стилизованной областью. Если определённый флаг не поддерживается стилем (например, WindowShadeButtonHint), вы всё равно можете затенять окно с помощью showShaded().

Подокна в QMdiArea являются экземплярами QMdiSubWindow. Они добавляются в область MDI с помощью addSubWindow(). Обычно в эту функцию передаётся QWidget, который устанавливается в качестве внутреннего виджета, но также можно передать QMdiSubWindow напрямую. Класс наследуется от QWidget, и при программировании вы можете использовать тот же API, что и с обычным окном верхнего уровня. QMdiSubWindow также имеет поведение, специфичное для окон MDI. Смотрите описание класса QMdiSubWindow для получения более подробной информации.

Подокно становится активным, когда получает фокус клавиатуры или когда вызывается setFocus(). Пользователь активирует окно обычным способом. Область MDI излучает сигнал subWindowActivated(), когда активное окно изменяется, а функция activeSubWindow() возвращает активное подокно.

Функция subWindowList() удобно возвращает список всех подокон.

Подвиджеты сортируются по текущему WindowOrder. Это используется для subWindowList(), а также для activateNextSubWindow() и activatePreviousSubWindow(). Кроме того, используется при каскадировании или укладке окон с помощью cascadeSubWindows() и tileSubWindows().

QMdiArea предоставляет две встроенные стратегии макетирования для подокон: cascadeSubWindows() и tileSubWindows(). Оба являются слотами и легко подключаются к пунктам меню.

<img alt="" src="data:image/png;base64,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

Примечание: По умолчанию свойство скроллбара для QMdiArea равно Qt::ScrollBarAlwaysOff.

См. также QMdiSubWindow.

Документация по типам членов

enum QMdiArea::AreaOptionflags QMdiArea::AreaOptions

Этот перечисление описывает опции, которые настраивают поведение QMdiArea.

Константа Значение Описание
QMdiArea::DontMaximizeSubWindowOnActivation 0x1 При максимизации активного подокна, по умолчанию, максимизируется следующее активированное подокно. Установите эту опцию, если вы не хотите этого поведения.

Тип AreaOptions является псевдонимом для QFlags<AreaOption>. Он хранит логическое ИЛИ комбинацию значений AreaOption.

enum QMdiArea::ViewMode

Это перечисление описывает режим отображения области; то есть, как будут отображаться подокна.

Константа Значение Описание
QMdiArea::SubWindowView 0 Отображение подокон с рамками (по умолчанию).
QMdiArea::TabbedView 1 Отображение подокон с вкладками в панели вкладок.

См. также setViewMode().

enum QMdiArea::WindowOrder

Указывает критерии для упорядочивания списка дочерних окон, возвращаемых функцией subWindowList(). Функции cascadeSubWindows() и tileSubWindows() следуют этому порядку при расположении окон.

Константа Значение Описание
QMdiArea::CreationOrder 0 Окна возвращаются в порядке их создания.
QMdiArea::StackingOrder 1 Окна возвращаются в порядке их расположения в стеке, при этом самое верхнее окно будет последним в списке.
QMdiArea::ActivationHistoryOrder 2 Окна возвращаются в порядке их активации.

См. также subWindowList().

Документация по свойствам

activationOrder : WindowOrder

Это свойство хранит критерии упорядочивания для списков подокон

Это свойство определяет критерии упорядочивания для списка подокон, возвращаемого функцией subWindowList(). По умолчанию это порядок создания окон.

Функции доступа:

QMdiArea::WindowOrder activationOrder() const
void setActivationOrder(QMdiArea::WindowOrder order)

См. также subWindowList().

background : QBrush

Это свойство хранит кисть фона для рабочего пространства

Это свойство устанавливает кисть фона для самой области рабочего пространства. По умолчанию это серый цвет, но может быть любой кистью (например, цвета, градиенты или пиксельные изображения).

Функции доступа:

QBrush background() const
void setBackground(const QBrush &background)

documentMode : bool

Это свойство хранит информацию о том, установлена ли панель вкладок в режим документа в режиме вкладок.

Режим документа по умолчанию отключён.

Функции доступа:

bool documentMode() const
void setDocumentMode(bool enabled)

См. также QTabBar::documentMode и setViewMode().

tabPosition : QTabWidget::TabPosition

Это свойство хранит положение вкладок в режиме вкладок.

Возможные значения для этого свойства описаны в перечислении QTabWidget::TabPosition.

Функции доступа:

QTabWidget::TabPosition tabPosition() const
void setTabPosition(QTabWidget::TabPosition position)

См. также QTabWidget::TabPosition и setViewMode().

tabShape : QTabWidget::TabShape

Это свойство хранит форму вкладок в режиме вкладок.

Возможные значения для этого свойства — QTabWidget::Rounded (по умолчанию) или QTabWidget::Triangular.

Функции доступа:

QTabWidget::TabShape tabShape() const
void setTabShape(QTabWidget::TabShape shape)

См. также QTabWidget::TabShape и setViewMode().

tabsClosable : bool

Это свойство хранит информацию о том, должна ли панель вкладок размещать кнопки закрытия на каждой вкладке в режиме вкладок.

Вкладки по умолчанию не закрываются.

Функции доступа:

bool tabsClosable() const
void setTabsClosable(bool closable)

См. также QTabBar::tabsClosable и setViewMode().

tabsMovable : bool

Это свойство хранит информацию о том, может ли пользователь перемещать вкладки в области панели вкладок в режиме вкладок.

Вкладки по умолчанию не перемещаются.

Функции доступа:

bool tabsMovable() const
void setTabsMovable(bool movable)

См. также QTabBar::movable и setViewMode().

viewMode : ViewMode

Это свойство хранит способ отображения под-окон в QMdiArea.

По умолчанию используется SubWindowView для отображения под-окон.

Функции доступа:

QMdiArea::ViewMode viewMode() const
void setViewMode(QMdiArea::ViewMode mode)

См. также ViewMode, setTabShape() и setTabPosition().

Документация по функциям членов

QMdiArea::QMdiArea(QWidget *parent = nullptr)

Создаёт пустую область mdi. parent передаётся в конструктор QWidget.

[slot] void QMdiArea::activateNextSubWindow()

Передаёт фокус клавиатуры другому окну в списке дочерних окон. Активируемое окно будет следующим, определённым текущим порядком активации.

См. также activatePreviousSubWindow() и QMdiArea::WindowOrder.

[slot] void QMdiArea::activatePreviousSubWindow()

Передаёт фокус клавиатуры другому окну в списке дочерних окон. Активируемое окно будет предыдущим, определённым текущим порядком активации.

См. также activateNextSubWindow() и QMdiArea::WindowOrder.

[slot] void QMdiArea::cascadeSubWindows()

Располагает все дочерние окна в виде каскада.

См. также tileSubWindows().

[slot] void QMdiArea::closeActiveSubWindow()

Закрывает активное подокно.

См. также closeAllSubWindows().

[slot] void QMdiArea::closeAllSubWindows()

Закрывает все подокна, отправляя QCloseEvent каждому окну. Вы можете получить сигналы subWindowActivated() от подокон выводимые перед их закрытием (если область MDI активирует подОкно во время закрытия другого).

ПодОкна, которые игнорируют событие закрытия, останутся открытыми.

См. также closeActiveSubWindow().

[slot] void QMdiArea::setActiveSubWindow(QMdiSubWindow *window)

Активирует подОкно window. Если window nullptr, любое текущее активное окно деактивируется.

См. также activeSubWindow().

[override virtual protected slot] void QMdiArea::setupViewport(QWidget *viewport)

Переопределяет: QAbstractScrollArea::setupViewport(QWidget *viewport).

Этот слот вызывается QAbstractScrollArea после вызова setViewport(). Переопределите эту функцию в подклассе QMdiArea, чтобы инициализировать новое viewport перед его использованием.

См. также setViewport().

[signal] void QMdiArea::subWindowActivated(QMdiSubWindow *window)

QMdiArea излучает этот сигнал после активации window. Когда window nullptr, QMdiArea только что деактивировал последнее активное окно, и на рабочем столе нет активных окон.

См. также QMdiArea::activeSubWindow().

[slot] void QMdiArea::tileSubWindows()

Располагает все дочерние окна в виде плитки.

См. также cascadeSubWindows().

[virtual] QMdiArea::~QMdiArea()

Уничтожает область MDI.

QMdiSubWindow *QMdiArea::activeSubWindow() const

Возвращает указатель на текущее активное подОкно. Если в данный момент активного окна нет, возвращается nullptr.

ПодОкна обрабатываются как окна верхнего уровня с точки зрения состояния окна, то есть если активным окном является виджет вне области MDI, ни одно подОкно не будет активным. Обратите внимание, что если виджет в окне, в котором находится область MDI, получит фокус, то окно будет активировано.

См. также setActiveSubWindow() и Qt::WindowState.

QMdiSubWindow *QMdiArea::addSubWindow(QWidget *widget, Qt::WindowFlags windowFlags = Qt::WindowFlags())

Добавляет widget в качестве нового подОкна в область MDI. Если windowFlags отличны от нуля, они переопределят флаги, установленные на виджете.

widget может быть либо QMdiSubWindow, либо другим QWidget (в этом случае область MDI создаст подОкно и установит widget в качестве внутреннего виджета).

Примечание: После добавления подОкна его родителем будет виджет viewport области QMdiArea.

    QMdiArea mdiArea;
    QMdiSubWindow *subWindow1 = new QMdiSubWindow;
    subWindow1->setWidget(internalWidget1);
    subWindow1->setAttribute(Qt::WA_DeleteOnClose);
    mdiArea.addSubWindow(subWindow1);

    QMdiSubWindow *subWindow2 =
        mdiArea.addSubWindow(internalWidget2);

При создании собственного подОкна необходимо установить атрибут виджета Qt::WA_DeleteOnClose, если вы хотите, чтобы окно удалялось при закрытии в области MDI. В противном случае окно будет скрыто, и область MDI не активирует следующее подОкно.

Возвращает QMdiSubWindow, который был добавлен в область MDI.

См. также removeSubWindow().

[override virtual protected] void QMdiArea::childEvent(QChildEvent *childEvent)

Переопределяет: QObject::childEvent(QChildEvent *event).

QMdiSubWindow *QMdiArea::currentSubWindow() const

Возвращает указатель на текущее подОкно или nullptr , если текущего подОкна нет.

Эта функция вернёт то же, что и activeSubWindow(), если приложение QApplication, содержащее QMdiArea, активно.

См. также activeSubWindow() и QApplication::activeWindow().

[override virtual protected] bool QMdiArea::event(QEvent *event)

Переопределяет: QAbstractScrollArea::event(QEvent *event).

[override virtual protected] bool QMdiArea::eventFilter(QObject *object, QEvent *event)

Переопределяет: QObject::eventFilter(QObject *watched, QEvent *event).

[override virtual] QSize QMdiArea::minimumSizeHint() const

Переопределяет: QAbstractScrollArea::minimumSizeHint() const.

[override virtual protected] void QMdiArea::paintEvent(QPaintEvent *paintEvent)

Переопределяет: QAbstractScrollArea::paintEvent(QPaintEvent *event).

void QMdiArea::removeSubWindow(QWidget *widget)

Удаляет widget из области MDI. widget никогда не удаляется непосредственно QMdiArea. Если передано QMdiSubWindow, родитель устанавливается на nullptr и он удаляется; но если передается внутренний виджет, дочерний виджет устанавливается в nullptr, а QMdiSubWindow не удаляется.

См. также addSubWindow().

[override virtual protected] void QMdiArea::resizeEvent(QResizeEvent *resizeEvent)

Переопределяет: QAbstractScrollArea::resizeEvent(QResizeEvent *event).

[override virtual protected] void QMdiArea::scrollContentsBy(int dx, int dy)

Переопределяет: QAbstractScrollArea::scrollContentsBy(int dx, int dy).

void QMdiArea::setOption(QMdiArea::AreaOption option, bool on = true)

Если on равно true, option включена в области MDI; в противном случае она выключена. См. AreaOption для эффекта каждой опции.

См. также AreaOption и testOption().

[override virtual protected] void QMdiArea::showEvent(QShowEvent *showEvent)

Переопределяет: QWidget::showEvent(QShowEvent *event).

[override virtual] QSize QMdiArea::sizeHint() const

Переопределяет: QAbstractScrollArea::sizeHint() const.

QList<QMdiSubWindow *> QMdiArea::subWindowList(QMdiArea::WindowOrder order = CreationOrder) const

Возвращает список всех подОкна в области MDI. Если order равен CreationOrder (по умолчанию), окна сортируются в порядке их вставки в рабочее пространство. Если order равен StackingOrder, окна перечисляются в порядке их расположения, при этом самое верхнее окно является последним элементом списка. Если order равен ActivationHistoryOrder, окна перечисляются в соответствии с их последней историей активации.

См. также WindowOrder.

bool QMdiArea::testOption(QMdiArea::AreaOption option) const

Возвращает true , если option включен; в противном случае возвращает false.

См. также AreaOption и setOption().

[override virtual protected] void QMdiArea::timerEvent(QTimerEvent *timerEvent)

Переопределяет: QObject::timerEvent(QTimerEvent *event).

[override virtual protected] bool QMdiArea::viewportEvent(QEvent *event)

Переопределяет: QAbstractScrollArea::viewportEvent(QEvent *event).

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qmdiarea.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API