Тип QML окна
Создает новое окно верхнего уровня. Подробнее...
| Заявление импорта: | import QtQuick.Window 2.15 |
| Инициализирует: | QQuickWindow |
Свойства
- active : bool
- activeFocusItem : Item
- цвет : цвет
- contentItem : Item
- contentOrientation : Qt::ScreenOrientation
- данные : список<Объект>
- флаги : Qt::WindowFlags
- высота : int
- максимальная высота : int
- максимальная ширина : int
- минимальная высота : int
- минимальная ширина : int
- модальность : Qt::WindowModality
- прозрачность : real
- экран : вариант
- заголовок : строка
- transientParent : QWindow
- видимость : QWindow::Visibility
- видимый : bool
- ширина : int
- x : int
- y : int
Присоединённые свойства
- active : bool
- activeFocusItem : Item
- contentItem : Item
- высота : int
- видимость : QWindow::Visibility
- ширина : int
- окно : Окно
Сигналы
- послеАнимации()
- closing(CloseEvent close)
- frameSwapped()
- sceneGraphError(SceneGraphError error, QString message)
Методы
- alert(int 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
Определяет максимальный размер окна.
Это подсказка для менеджера окон, чтобы предотвратить изменение размера свыше указанной ширины и высоты.
Это свойство QML было введено в Qt 5.1.
минимальная высота : int
Определяет минимальный размер окна.
Это подсказка для менеджера окон, чтобы предотвратить изменение размера ниже указанной ширины и высоты.
Это свойство QML было введено в Qt 5.1.
высота : int
Определяет положение и размер окна.
Положение (x,y) относительно Screen, если он один, или к виртуальному рабочему столу (расположение нескольких экранов).
Window { x: 100; y: 100; width: 100; height: 100 } active : bool
Статус активности окна.
Это свойство было введено в Qt 5.1.
См. также requestActivate().
activeFocusItem : Item
Элемент, который в данный момент имеет активный фокус или null если нет элемента с активным фокусом.
Это свойство было введено в Qt 5.1.
цвет : цвет
Цвет фона для окна.
Установка этого свойства более эффективна, чем использование отдельного Rectangle.
[только для чтения] contentItem : Item
Невидимый корневой элемент сцены.
contentOrientation : Qt::ScreenOrientation
Это подсказка для менеджера окон, если ему нужно отобразить дополнительный контент, такой как всплывающие окна, диалоговые окна, панели состояния или подобное, по отношению к окну.
Рекомендуемой ориентацией является Screen.orientation, но приложение не обязательно должно поддерживать все возможные ориентации, и, следовательно, может выбрать игнорирование текущей ориентации экрана.
Разница между ориентацией окна и ориентацией содержимого определяет, на сколько поворачивать содержимое.
Значение по умолчанию — Qt::PrimaryOrientation.
Это свойство было введено в Qt 5.1.
См. также экран.
[значение по умолчанию] данные : список<Объект>
Свойство данных позволяет свободно смешивать визуальные дочерние элементы, ресурсы и другие окна в окне.
Если вы присвоите другому окну список данных, вложенное окно станет «временным для» внешнего окна.
Если вы присваиваете Item списку данных, он становится дочерним элементом contentItem окна, так что он отображается внутри окна. Родительским элементом этого элемента будет contentItem окна, который является корнем дерева владения Item внутри этого окна.
Если вы присваиваете любой другой тип объекта, он добавляется как ресурс.
Обычно не нужно ссылаться на свойство data, поскольку это свойство по умолчанию для окна, и поэтому все дочерние элементы автоматически присваиваются этому свойству.
См. также QWindow::transientParent().
END_OF_DOCUMENT_MARKERflags : 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
Окно, для которого это окно является всплывающим окном.
Это подсказка для менеджера окон, что это окно является диалоговым или всплывающим окном от имени родительского окна. Обычно это означает, что всплывающее окно будет центрировано над своим родительским окном при его первоначальном отображении, что сворачивание родительского окна также будет сворачивать всплывающее окно, и так далее; однако результаты несколько различаются в зависимости от платформы.
Обычно, если вы объявляете окно внутри элемента Item или внутри другого окна, эта связь вычисляется автоматически. В этом случае, если вы объявляете свойство visible этого окна true, оно фактически не будет отображено, пока не будет отображено transientParent окно.
Однако если вы установите это свойство, Qt Quick больше не будет ждать, пока transientParent окно будет отображено перед отображением этого окна. Если вы хотите иметь возможность отображать всплывающее окно независимо от родительского элемента Item или окна, внутри которого оно было объявлено, вы можете разорвать эту связь, установив 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.
Attached Property Documentation
Window.height : int
Эти присоединенные свойства содержат размер окна элемента. Свойство Window может быть присоединенным к любому элементу Item.
Это свойство QML было добавлено в Qt 5.5.
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.
Signal Documentation
afterAnimating()
Этот сигнал испускается в потоке GUI перед запросом к потоку отрисовки выполнить синхронизацию графа сцены.
Вы можете реализовать onAfterAnimating, чтобы выполнить дополнительную обработку после каждого шага анимации.
Примечание: Соответствующий обработчик — onAfterAnimating.
Этот сигнал был добавлен в Qt 5.3.
closing(CloseEvent close)
Этот сигнал испускается, когда пользователь пытается закрыть окно.
Этот сигнал включает параметр close. Свойство close.accepted по умолчанию равно true, что позволяет закрыть окно; но вы можете реализовать обработчик onClosing и установить close.accepted = false, если вам нужно сделать что-то еще перед закрытием окна.
Примечание: Соответствующий обработчик — onClosing.
Этот сигнал был добавлен в Qt 5.1.
frameSwapped()
Этот сигнал испускается, когда кадр был помещен в очередь для отображения. При включенной вертикальной синхронизации сигнал испускается не более одного раза за интервал вертикальной синхронизации в непрерывно анимируемой сцене.
Примечание: Соответствующий обработчик — onFrameSwapped.
sceneGraphError(SceneGraphError error, QString message)
Этот сигнал испускается, когда во время инициализации графа сцены произошла ошибка error.
Вы можете реализовать onSceneGraphError(error, message), чтобы обрабатывать ошибки, такие как сбои в создании контекста графики, своим способом. Если ни один обработчик не подключен к этому сигналу, Quick выведет сообщение message или покажет сообщение в диалоговом окне и завершит приложение.
Примечание: Соответствующий обработчик — onSceneGraphError.
Этот сигнал был добавлен в Qt 5.3.
Method Documentation
alert(int 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(), в зависимости от поведения по умолчанию платформы для типа окна и флагов.
См. также 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.15/qml-qtquick-window-window.html