QFontDialog Class
QFontDialog类提供了一个用于选择字体的对话框小部件。
Header | #include < QFontDialog > |
---|---|
qmake | QT += widgets |
Inherits | QDialog |
Inherited By |
详细说明
字体对话框是通过一个静态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()));
如果用户单击OK,他们选择的字体将用于myWidget,如果单击Cancel,则使用原始字体。
公共类型
enum QFontDialog::FontDialogOption
flags QFontDialog::FontDialogOptions
此枚举指定影响字体对话框外观的各种选项。
例如,它允许指定应显示的字体类型。如果未指定任何字体,将列出所有可用字体。
请注意,某些平台(如Mac)可能不支持字体筛选选项。非本机对话框(在Windows或Linux上使用)始终支持它们。
Constant | Value | Description |
---|---|---|
QFontDialog::NoButtons | 0x00000001 | 不显示“确定”和“取消”按钮。(适用于“实时对话”。) |
QFontDialog::DontUseNativeDialog | 0x00000002 | 在Mac上使用Qt的标准字体对话框,而不是Apple的本机字体面板。 |
QFontDialog::ScalableFonts | 0x00000004 | 显示可缩放字体 |
QFontDialog::NonScalableFonts | 0x00000008 | 显示不可缩放字体 |
QFontDialog::MonospacedFonts | 0x00000010 | 显示等距字体 |
QFontDialog::ProportionalFonts | 0x00000020 | 显示比例字体 |
属性
-
currentFont: QFont 保存对话框的当前字体
- QFont currentFont() const
- void setCurrentFont(const QFont &font)
Notifier signal:
- QFont currentFont() const
- void setCurrentFont(const QFont &font)
-
options: FontDialogOptions 包含影响对话框外观的各种选项
默认情况下,禁用所有选项。
应在显示对话框之前设置选项。在对话框可见时设置它们不能保证对对话框产生直接影响(取决于选项和平台)。- QFontDialog::FontDialogOptions options() const
- void setOptions(QFontDialog::FontDialogOptions options)
公共函数
构造和析构
- QFontDialog(const QFont &initial, QWidget *parent = nullptr)
- QFontDialog(QWidget *parent = nullptr)
属性相关
- QFont currentFont() const
void setCurrentFont(const QFont &font) - QFontDialog::FontDialogOptions options() const
void setOptions(QFontDialog::FontDialogOptions options)
其它
- void open(QObject *receiver, const char *member)
- QFont selectedFont() const
- bool testOption(QFontDialog::FontDialogOption option) const
void setOption(QFontDialog::FontDialogOption option, bool on = true)
重写的公共函数
- 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