Тип QML FontDialog
Компонент диалога для выбора шрифта. Подробнее...
| Заявление об импорте: | import QtQuick.Dialogs 1.3 |
| С момента: | Qt 5.2 |
Свойства
- currentFont : шрифт
- font : шрифт
- modality : Qt::WindowModality
- monospacedFonts : bool
- nonScalableFonts : bool
- proportionalFonts : bool
- scalableFonts : bool
- title : строка
- visible : bool
Методы
Подробное описание
FontDialog позволяет пользователю выбрать шрифт. Диалог изначально невидим. Сначала необходимо установить нужные свойства, а затем установить visible в true или вызвать open().
Вот минимальный пример открытия диалога выбора шрифта и выхода после выбора пользователем шрифта:
import QtQuick 2.2
import QtQuick.Dialogs 1.1
FontDialog {
id: fontDialog
title: "Please choose a font"
font: Qt.font({ family: "Arial", pointSize: 24, weight: Font.Normal })
onAccepted: {
console.log("You chose: " + fontDialog.font)
Qt.quit()
}
onRejected: {
console.log("Canceled")
Qt.quit()
}
Component.onCompleted: visible = true
} Окно FontDialog автоматически является временным для родительского окна. Таким образом, независимо от того, объявляете ли вы диалог внутри Item или внутри Window, диалог будет отображаться по центру над окном, содержащим элемент, или над окном, которое вы объявили.
Реализация FontDialog будет представлять собой платформенный диалог выбора шрифта, если это возможно. Если это невозможно, она попытается создать экземпляр QFontDialog. Если и это невозможно, то она перейдёт к реализации на QML, DefaultFontDialog.qml. В этом случае вы можете настроить внешний вид, отредактировав этот файл. DefaultFontDialog.qml содержит прямоугольник для размещения содержимого диалога, поскольку некоторые встраиваемые системы не поддерживают несколько окон верхнего уровня. При отображении диалога он автоматически будет обернут в окно, если это возможно, или просто переродится поверх основного окна, если может быть только одно окно.
Документация по свойствам
currentFont : шрифт
Шрифт, который пользователь выбрал.
Это свойство было введено в Qt 5.3.
font : шрифт
Шрифт, который пользователь выбрал и принял.
modality : Qt::WindowModality
Определяет, должен ли диалог отображаться как модальный по отношению к окну, содержащему родительский элемент диалога, модальный по отношению ко всему приложению или немодальный.
По умолчанию это Qt.NonModal.
Модальность не означает, что есть какие-либо блокирующие вызовы ожидания принятия или отклонения диалога; она только предотвращает взаимодействие пользователя с родительским окном и/или окнами приложения одновременно.
Вероятно, вам нужно написать обработчик onAccepted, если вы хотите изменить шрифт после того, как пользователь нажал кнопку «ОК», или обработчик onCurrentFontChanged, если вы хотите реагировать на каждое изменение, которое пользователь вносит во время открытия диалога.
monospacedFonts : bool
Определяет, будут ли в диалоге отображаться шрифты с одинаковой шириной символов.
nonScalableFonts : bool
Определяет, будут ли в диалоге отображаться несжимаемые шрифты.
proportionalFonts : bool
Определяет, будут ли в диалоге отображаться пропорциональные шрифты.
scalableFonts : bool
Определяет, будут ли в диалоге отображаться масштабируемые шрифты.
title : строка
Заголовок окна диалога.
visible : bool
Это свойство указывает, отображается ли диалог. По умолчанию оно равно false.
См. также modality.
Документация по методам
void close()
Закрывает диалог.
void open()
Отображает диалог пользователю. Это эквивалентно установке visible в true.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-qtquick-dialogs-fontdialog.html