Класс QFontDialog
Класс QFontDialog предоставляет диалоговое окно для выбора шрифта. Подробнее...
| Заголовок: | #include <QFontDialog> |
| qmake: | QT += widgets |
| Наследует: | QDialog |
Открытые типы
| перечисление | FontDialogOption { НетКнопок, НеИспользоватьНативноеДиалоговоеОкно, МасштабируемыеШрифты, НеМасштабируемыеШрифты, ШрифтыСФиксированнымШагом, ПропорциональныеШрифты } |
| флаги | FontDialogOptions |
Свойства
- currentFont : QFont
- options : FontDialogOptions
Открытые функции
| QFontDialog(const QFont &initial, QWidget *parent = nullptr) | |
| QFontDialog(QWidget *parent = nullptr) | |
| QFont | currentFont() const |
| void | open(QObject *receiver, const char *member) |
| QFontDialog::FontDialogOptions | options() const |
| QFont | selectedFont() const |
| void | setCurrentFont(const QFont &font) |
| void | setOption(QFontDialog::FontDialogOption option, bool on = true) |
| void | setOptions(QFontDialog::FontDialogOptions options) |
| bool | testOption(QFontDialog::FontDialogOption option) const |
Переопределённые открытые функции
| virtual void | setVisible(bool visible) override |
Сигналы
| void | currentFontChanged(const QFont &font) |
| void | fontSelected(const QFont &font) |
Статические открытые члены
| QFont | getFont(bool *ok, const QFont &initial, QWidget *parent = nullptr, const QString &title = QString(), QFontDialog::FontDialogOptions options = FontDialogOptions()) |
| QFont | getFont(bool *ok, QWidget *parent = nullptr) |
Переопределённые защищённые функции
| virtual void | changeEvent(QEvent *e) override |
| virtual void | done(int result) override |
Подробное описание
Диалоговое окно шрифта создается с помощью одной из статических функций getFont().
Примеры:
bool ok;
QFont font = QFontDialog::getFont(
&ok, QFont("Helvetica [Cronyx]", 10), this);
if (ok) {
// the user clicked OK and font is set to the font the user selected
} else {
// the user canceled the dialog; font is set to the initial
// value, in this case Helvetica [Cronyx], 10
} Диалоговое окно также может использоваться для непосредственного изменения шрифта виджета:
myWidget.setFont(QFontDialog::getFont(0, myWidget.font()));
Если пользователь нажимает «ОК», выбранный шрифт будет использован для myWidget, а если «Отмена», используется исходный шрифт.
См. также QFont, QFontInfo, QFontMetrics, QColorDialog, QFileDialog и Пример стандартных диалогов.
Документация по типу члена
перечисление QFontDialog::FontDialogOptionфлаги QFontDialog::FontDialogOptions
Это перечисление определяет различные параметры, которые влияют на внешний вид диалога выбора шрифта.
Например, это позволяет указать, какой тип шрифта должен быть отображён. Если не указан ни один, будут перечислены все доступные шрифты.
Обратите внимание, что параметры фильтрации шрифтов могут быть не поддерживаемыми на некоторых платформах (например, Mac). Они всегда поддерживаются неродным диалоговым окном (используемым в Windows или Linux).
| Константа | Значение | Описание |
|---|---|---|
QFontDialog::NoButtons |
0x00000001 |
Не отображать кнопки ОК и Отмена. (Полезно для «живых диалоговых окон».) |
QFontDialog::DontUseNativeDialog |
0x00000002 |
Использовать стандартный диалог шрифтов Qt на Mac вместо родного диалогового окна Apple. |
QFontDialog::ScalableFonts |
0x00000004 |
Показывать масштабируемые шрифты |
QFontDialog::NonScalableFonts |
0x00000008 |
Показывать не масштабируемые шрифты |
QFontDialog::MonospacedFonts |
0x00000010 |
Показывать шрифты с фиксированным интервалом |
QFontDialog::ProportionalFonts |
0x00000020 |
Показывать пропорциональные шрифты |
Этот перечисление был добавлен или изменён в Qt 4.5.
Тип FontDialogOptions — это typedef для QFlags<FontDialogOption>. Он хранит логическое ИЛИ комбинацию значений FontDialogOption.
См. также options, setOption() и testOption().
Документация свойств
currentFont : QFont
Это свойство содержит текущий шрифт диалогового окна.
Это свойство было добавлено в Qt 4.5.
Функции доступа:
| QFont | currentFont() const |
| void | setCurrentFont(const QFont &font) |
Сигнал уведомления:
| void | currentFontChanged(const QFont &font) |
options : FontDialogOptions
Это свойство содержит различные параметры, которые влияют на внешний вид диалогового окна.
По умолчанию все параметры отключены.
Параметры должны быть установлены до показа диалогового окна. Установка их во время видимости диалогового окна не гарантирует немедленного эффекта на диалоговое окно (в зависимости от параметра и платформы).
Это свойство было добавлено в Qt 4.5.
Функции доступа:
| QFontDialog::FontDialogOptions | options() const |
| void | setOptions(QFontDialog::FontDialogOptions options) |
См. также setOption() и testOption().
Документация функций-членов
QFontDialog::QFontDialog(const QFont &initial, QWidget *parent = nullptr)
Конструирует стандартное диалоговое окно шрифтов с заданным parent и указанным начальным шрифтом initial.
Эта функция была добавлена в Qt 4.5.
QFontDialog::QFontDialog(QWidget *parent = nullptr)
Конструирует стандартное диалоговое окно шрифтов.
Используйте setCurrentFont() для установки начальных атрибутов шрифта.
Параметр parent передаётся конструктору QDialog.
Эта функция была добавлена в Qt 4.5.
См. также getFont().
[signal] void QFontDialog::currentFontChanged(const QFont &font)
Этот сигнал испускается при изменении текущего шрифта. Новый шрифт задан в font.
Сигнал испускается, пока пользователь выбирает шрифт. В конечном итоге выбранный шрифт может отличаться от шрифта, который в данный момент выбран.
Примечание: Сигнал уведомления для свойства currentFont.
Эта функция была добавлена в Qt 4.5.
См. также currentFont, fontSelected() и selectedFont().
[signal] void QFontDialog::fontSelected(const QFont &font)
Этот сигнал испускается, когда шрифт был выбран. Выбранный шрифт задан в font.
Сигнал испускается только тогда, когда пользователь выбрал окончательный шрифт. Он не испускается, когда пользователь изменяет текущий шрифт в диалоговом окне шрифтов.
Эта функция была добавлена в Qt 4.5.
См. также selectedFont(), currentFontChanged() и currentFont.
[override virtual protected] void QFontDialog::changeEvent(QEvent *e)
Переопределяет: QWidget::changeEvent(QEvent *event).
QFont QFontDialog::currentFont() const
Возвращает текущий шрифт.
Примечание: Функция-геттер для свойства currentFont.
Эта функция была добавлена в Qt 4.5.
См. также setCurrentFont() и selectedFont().
[override virtual protected] void QFontDialog::done(int result)
Переопределяет: QDialog::done(int r).
Закрывает диалоговое окно и устанавливает его код результата в result. Если это диалоговое окно показано с помощью exec(), done() вызывает завершение локального цикла событий и exec() возвращает result.
См. также QDialog::done().
[static] QFont QFontDialog::getFont(bool *ok, const QFont &initial, QWidget *parent = nullptr, const QString &title = QString(), QFontDialog::FontDialogOptions options = FontDialogOptions())
Выполняет модальное диалоговое окно выбора шрифта и возвращает шрифт.
Если пользователь нажмёт ОК, возвращается выбранный шрифт. Если пользователь нажмёт Отмена, возвращается шрифт initial.
Диалоговое окно создаётся с заданным parent и параметрами, указанными в options. title отображается в качестве заголовка окна диалогового окна, а initial — как выбранный изначально шрифт. Если параметр ok не равен нулю, значение, на которое он ссылается, устанавливается в true, если пользователь нажмёт ОК, и в false, если пользователь нажмёт Отмена.
Примеры:
bool ok;
QFont font = QFontDialog::getFont(&ok, QFont("Times", 12), this);
if (ok) {
// font is set to the font the user selected
} else {
// the user canceled the dialog; font is set to the initial
// value, in this case Times, 12.
} Диалоговое окно также может использоваться для непосредственной установки шрифта виджета:
myWidget.setFont(QFontDialog::getFont(0, myWidget.font()));
В этом примере, если пользователь нажмёт ОК, будет использоваться выбранный им шрифт, а если Отмена — исходный шрифт.
Предупреждение: Не удаляйте parent во время выполнения диалогового окна. Если вы хотите это сделать, вы должны создать диалоговое окно самостоятельно, используя один из конструкторов QFontDialog.
[static] QFont QFontDialog::getFont(bool *ok, QWidget *parent = nullptr)
Это перегруженная функция.
Выполняет модальное диалоговое окно выбора шрифта и возвращает шрифт.
Если пользователь нажмёт ОК, возвращается выбранный шрифт. Если пользователь нажмёт Отмена, возвращается стандартный шрифт Qt.
Диалоговое окно создаётся с заданным parent. Если параметр ok не равен нулю, его значение устанавливается в true, если пользователь нажмёт ОК, и в false, если Отмена.
Пример:
bool ok;
QFont font = QFontDialog::getFont(&ok, this);
if (ok) {
// font is set to the font the user selected
} else {
// the user canceled the dialog; font is set to the default
// application font, QApplication::font()
} Предупреждение: Не удаляйте parent во время выполнения диалогового окна. Если вы хотите это сделать, вы должны создать диалоговое окно самостоятельно, используя один из конструкторов QFontDialog.
void QFontDialog::open(QObject *receiver, const char *member)
Открывает диалоговое окно и подключает его сигнал fontSelected() к слоту, указанному receiver и member.
Сигнал будет отключён от слота при закрытии диалогового окна.
Эта функция была добавлена в Qt 4.5.
QFont QFontDialog::selectedFont() const
Возвращает шрифт, который пользователь выбрал, нажав кнопку ОК или аналогичную.
Примечание: Этот шрифт не всегда совпадает со шрифтом, хранящимся в свойстве currentFont, так как пользователь может выбрать разные шрифты, прежде чем окончательно выбрать используемый.
void QFontDialog::setCurrentFont(const QFont &font)
Устанавливает шрифт, выделенный в QFontDialog, на заданный font.
Примечание: Функция-сеттер для свойства currentFont.
Эта функция была добавлена в Qt 4.5.
См. также currentFont() и selectedFont().
void QFontDialog::setOption(QFontDialog::FontDialogOption option, bool on = true)
Устанавливает заданный параметр option в состояние включения, если on имеет значение true; в противном случае, очищает заданный параметр.
См. также options и testOption().
[override virtual] void QFontDialog::setVisible(bool visible)
Переопределяет: QDialog::setVisible(bool visible).
bool QFontDialog::testOption(QFontDialog::FontDialogOption option) const
Возвращает true, если заданный параметр option включён; в противном случае, возвращает false.
См. также options и setOption().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qfontdialog.html