Тип окна QML
Создаёт новое окно верхнего уровня. Подробнее...
| Заявление об импорте: | import QtQuick.Window 2.13 |
| Создаёт: | QQuickWindow |
Свойства
- active : bool
- activeFocusItem : Item
- цвет : цвет
- contentItem : Item
- contentOrientation : Qt::ScreenOrientation
- данные : list<Object>
- флаги : Qt::WindowFlags
- высота : int
- высота : int
- максимальнаяВысота : int
- максимальнаяШирина : int
- минимальнаяВысота : int
- минимальнаяШирина : int
- модальность : Qt::WindowModality
- прозрачность : real
- экран : variant
- заголовок : string
- transientParent : QWindow
- видимость : QWindow::Visibility
- виден : bool
- ширина : int
- ширина : int
- x : int
- y : int
Присоединённые свойства
- active : bool
- activeFocusItem : Item
- contentItem : Item
- видимость : QWindow::Visibility
- окно : Окно
Сигналы
- closing(close)
Методы
- alert(msec)
- закрыть()
- скрыть()
- понизить()
- поднять()
- requestActivate()
- показать()
- показатьНаВесьЭкран()
- показатьМаксимизированным()
- показатьМинимизированным()
- показатьНормальным()
Подробное описание
Объект Window создаёт новое окно верхнего уровня для сцены Qt Quick. Он автоматически настраивает окно для использования с QtQuick 2.x графическими типами.
Чтобы использовать этот тип, вам необходимо импортировать модуль с помощью следующей строки:
import QtQuick.Window 2.2
Пропуск этого импорта позволит вам иметь среду QML без доступа к функциям системного окна.
Окно может быть объявлено внутри элемента Item или внутри другого окна; в этом случае внутреннее окно автоматически станет "транзитивным для" внешнего окна: большинство платформ будут по умолчанию отображать его центрированным по отношению к внешнему окну, и могут быть другие платформенно-зависимые поведения, также зависящие от флагов. Если вложенное окно предназначено для использования в диалоговом окне приложения, вы также должны установить флаги на Qt.Dialog, так как некоторые диспетчеры окон не будут обеспечивать центрирование без этого флага. Вы также можете объявить несколько окон внутри верхнего уровня QtObject, в этом случае окна не будут иметь транзитивных отношений.
В качестве альтернативы вы можете установить или связать x и y, чтобы явно расположить окно на экране.
Когда пользователь пытается закрыть окно, будет отправлен сигнал closing. Вы можете заставить окно остаться открытым (например, чтобы попросить пользователя сохранить изменения), написав обработчик onClosing и установив close.accepted = false.
Документация свойств
максимальнаяШирина : int
Определяет максимальный размер окна.
Это подсказка для диспетчера окон, чтобы предотвратить изменение размера выше указанной ширины и высоты.
Эта документация была добавлена в Qt 5.1.
минимальнаяШирина : int
Определяет минимальный размер окна.
Это подсказка для диспетчера окон, чтобы предотвратить изменение размера ниже указанной ширины и высоты.
Эта документация была добавлена в Qt 5.1.
x : int
Определяет положение и размер окна.
Положение (x, y) относительное к экрану, если он один, или к виртуальному рабочему столу (расположение нескольких экранов).
Window { x: 100; y: 100; width: 100; height: 100 } Window.ширина : int
Эти присоединённые свойства содержат размер окна элемента. Свойство Window может быть присоединёно к любому элементу Item.
Эта документация была добавлена в Qt 5.5.
активный : bool
Статус активности окна.
Это свойство было добавлено в Qt 5.1.
См. также requestActivate().
activeFocusItem : Item
Элемент, который в данный момент имеет активный фокус или null если нет элемента с активным фокусом.
Это свойство было добавлено в Qt 5.1.
цвет : цвет
Цвет фона для окна.
Установка этого свойства более эффективна, чем использование отдельного прямоугольника.
[только для чтения] contentItem : Item
Невидимый корневой элемент сцены.
contentOrientation : Qt::ScreenOrientation
Это подсказка для диспетчера окон, если ему нужно отобразить дополнительное содержимое, такое как всплывающие окна, диалоговые окна, строка состояния или аналогичное по отношению к окну.
Рекомендуемая ориентация — Screen.orientation, но приложению не нужно поддерживать все возможные ориентации, и поэтому оно может игнорировать текущую ориентацию экрана.
Разница между ориентацией окна и ориентацией содержимого определяет, на сколько градусов повернуть содержимое.
Значение по умолчанию — Qt::PrimaryOrientation.
Это свойство было добавлено в Qt 5.1.
См. также экран.
[по умолчанию] данные : list<Объект>
Свойство data позволяет свободно смешивать визуальных потомков, ресурсы и другие окна в окне.
Если вы назначите другое окно в список данных, вложенное окно станет "транзитивным для" внешнего окна.
Если вы назначите Item в список данных, он станет дочерним элементом contentItem окна, так что он будет отображаться внутри окна. Родительским элементом элемента будет contentItem окна, являющийся корнем дерева владения Item внутри этого окна.
Если вы назначите любой другой тип объекта, он будет добавлен как ресурс.
В целом, не должно быть необходимости ссылаться на свойство data, так как это свойство по умолчанию для окна, и все дочерние элементы автоматически назначаются этому свойству.
См. также QWindow::transientParent().
флаги : Qt::WindowFlags
Флаги окна.
Флаги окна управляют внешним видом окна в системе окон, будь то диалоговое окно, всплывающее окно или обычное окно, а также наличием или отсутствием заголовка и т. д.
Флаги, которые вы читаете из этого свойства, могут отличаться от установленных, если запрошенные флаги не могут быть выполнены.
См. также Qt::WindowFlags.
modality : Qt::WindowModality
Модальность окна.
Модальное окно препятствует получению других окон событий ввода. Возможные значения: Qt.NonModal (по умолчанию), Qt.WindowModal и Qt.ApplicationModal.
opacity : real
Непрозрачность окна.
Если система окон поддерживает непрозрачность окон, это можно использовать для плавного появления и исчезновения окна или для придания ему полупрозрачности.
Значение 1.0 или больше обрабатывается как полностью непрозрачное, а значение 0.0 или меньше — как полностью прозрачное. Промежуточные значения представляют собой различные уровни полупрозрачности между этими двумя крайностями.
Значение по умолчанию — 1.0.
Это свойство было добавлено в Qt 5.1.
screen : variant
Экран, с которым связано окно.
Если задано перед отображением окна, окно будет отображаться на этом экране, если не задано явное положение окна. Значение должно быть элементом из массива Qt.application.screens.
Примечание: Чтобы гарантировать, что окно будет связано с нужным экраном при создании базового системного окна, убедитесь, что это свойство задано как можно раньше и что его значение не откладывается. Это особенно важно на встроенных платформах без системы окон, где одновременно разрешено только одно окно на экран. Установка экрана после создания окна не перемещает окно, если новый экран является частью той же виртуальной рабочей области, что и старый экран.
Это свойство было добавлено в Qt 5.9.
См. также QWindow::setScreen(), QWindow::screen(), QScreen и Qt.application.
title : string
Заголовок окна в системе окон.
Заголовок окна может отображаться в области заголовка украшения окна, в зависимости от системы окон и флагов окна. Он также может использоваться системой окон для идентификации окна в других контекстах, таких как в переключателе задач.
transientParent : QWindow
Окно, для которого это окно является всплывающим окном-дочерним.
Это подсказка для менеджера окон о том, что это окно является диалоговым или всплывающим окном от имени родительского окна-дочернего. Обычно это означает, что всплывающее окно будет центрироваться над своим родительским окном-дочерним при его первоначальном отображении, что минимизация родительского окна также будет минимизировать всплывающее окно, и так далее; однако результаты несколько варьируются в зависимости от платформы.
Как правило, если вы объявляете Window внутри Item или внутри другого Window, эта связь выводится автоматически. В этом случае, если вы объявляете свойство visible этого окна, оно фактически не будет отображено до тех пор, пока не отобразится transientParent окно.
Однако если вы зададите это свойство, Qt Quick больше не будет ждать, пока transientParent окно отобразится перед отображением этого окна. Если вы хотите иметь возможность отображать всплывающее окно независимо от родительского элемента Item или Window, в котором оно было объявлено, вы можете удалить эту связь, задав transientParent значение null:
import QtQuick.Window 2.13
Window {
// visible is false by default
Window {
transientParent: null
visible: true
}
} Для того, чтобы окно по умолчанию центрировалось над своим родительским окном-дочерним, в зависимости от менеджера окон, может потребоваться также установить свойство Window::flags с подходящим значением Qt::WindowType (например, Qt::Dialog).
Это свойство было добавлено в Qt 5.13.
visibility : QWindow::Visibility
Состояние занятости экрана окном.
Видимость — это то, должно ли окно отображаться в системе окон как обычное, минимизированное, максимизированное, полноэкранное или скрытое.
Установить видимость на AutomaticVisibility означает установить для окна состояние видимости по умолчанию, которое может быть FullScreen или Windowed в зависимости от платформы. Однако при чтении свойства видимости вы всегда получите фактическое состояние, а не AutomaticVisibility.
Когда окно не видно, его видимость — Скрыто, и установка видимости на Hidden равносильна установке visible в false.
Это свойство было добавлено в Qt 5.1.
См. также visible.
visible : bool
Отображается ли окно на экране.
Установление visible в false равносильно установке visibility на Hidden.
См. также visibility.
Документация по присоединенному свойству
Window.active : bool
Это присоединенное свойство указывает, активно ли окно. Присоединенное свойство Window может быть присоединен к любому Item.
Вот пример, который изменяет метку, чтобы показать активное состояние окна, в котором она отображается:
import QtQuick 2.4
import QtQuick.Window 2.2
Text {
text: Window.active ? "active" : "inactive"
} Это свойство было добавлено в Qt 5.4.
Window.activeFocusItem : Item
Это присоединенное свойство содержит элемент, который в данный момент имеет активный фокус, или null если нет элемента с активным фокусом. Присоединенное свойство Window может быть присоединен к любому Item.
Это свойство было добавлено в Qt 5.4.
Window.contentItem : Item
Это присоединенное свойство содержит невидимый корневой элемент сцены или null если элемент не находится в окне. Присоединенное свойство Window может быть присоединен к любому Item.
Это свойство было добавлено в Qt 5.4.
Window.visibility : QWindow::Visibility
Это присоединенное свойство содержит информацию о том, отображается ли окно в системе окон как обычное, минимизированное, максимизированное, полноэкранное или скрытое в данный момент. Присоединенное свойство Window может быть прикреплено к любому элементу Item. Если элемент не отображается ни в одном окне, значение будет Hidden.
Это свойство было добавлено в Qt 5.4.
См. также visible и видимость.
Window.window : Window
Это присоединенное свойство содержит окно элемента. Присоединенное свойство Window может быть присоединен к любому Item.
Это свойство было добавлено в Qt 5.7.
Документация по сигналам
closing(close)
Этот сигнал излучается, когда пользователь пытается закрыть окно.
Этот сигнал включает параметр close. Свойство close.accepted по умолчанию имеет значение true, так что окно разрешено закрыть; но вы можете реализовать обработчик onClosing и установить close.accepted = false если вам нужно сделать что-то еще перед закрытием окна.
Соответствующий обработчик — onClosing.
Этот сигнал был добавлен в Qt 5.1.
Документация по методам
alert(msec)
Вызывает отображение предупреждения на msec миллисекунд. Если msec равно 0 (по умолчанию), то предупреждение отображается неопределенно долго, пока окно снова не станет активным.
В состоянии предупреждения окно указывает, что требует внимания, например, мигая или подпрыгивая записью в панели задач.
Этот метод был добавлен в Qt 5.1.
close()
Закрывает окно.
Когда этот метод вызывается или когда пользователь пытается закрыть окно кнопкой заголовка, излучается сигнал closing. Если нет обработчика или обработчик не отменяет разрешение на закрытие, окно впоследствии закроется. Если свойство QGuiApplication::quitOnLastWindowClosed имеет значение true, и другие окна не открыты, приложение завершится.
hide()
Скрывает окно.
Эквивалентно установке visible в false или visibility в Hidden.
См. также show().
lower()
Опускает окно в системе окон.
Запрос о том, чтобы окно было опущено, чтобы оно отображалось под другими окнами.
raise()
Приподнимает окно в системе окон.
Запрос о том, чтобы окно было поднято, чтобы оно отображалось над другими окнами.
requestActivate()
Запрос активации окна, т. е. получения фокуса клавиатуры.
Этот метод был добавлен в Qt 5.1.
show()
Отображает окно.
Это эквивалентно вызову showFullScreen(), showMaximized() или showNormal(), в зависимости от поведения по умолчанию платформы для типа и флагов окна.
END_OF_DOCUMENT_MARKERСм. также showFullScreen(), showMaximized(), showNormal(), hide() и QQuickItem::flags().
showFullScreen()
Отображает окно в полноэкранном режиме.
Эквивалентно установке visibility в FullScreen.
showMaximized()
Отображает окно в максимальном режиме.
Эквивалентно установке visibility в Maximized.
showMinimized()
Отображает окно в свёрнутом виде.
Эквивалентно установке visibility в Minimized.
showNormal()
Отображает окно в нормальном режиме, т. е. не максимизированное, не свёрнутое и не полноэкранное.
Эквивалентно установке visibility в Windowed.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qml-qtquick-window-window.html