FontDialog QML Type
本地字体对话框更多
| Import Statement: | import Qt.labs.platform |
| Inherits: | |
| Status: | Deprecated since 6.9 |
自 Qt.labs.platform 6.9 起,该类型已被弃用。我们强烈建议不要在新代码中使用它。
属性
- currentFont : font
- font : font
- options : flags
详细说明
使用QtQuick.Dialogs FontDialog 代替。
FontDialog 类型为本地平台字体对话框提供了 QML API。

要显示字体对话框,只需构建一个 FontDialog 实例,设置所需的属性,然后调用open() 即可。currentFont 属性可用于确定对话框中当前选择的字体。只有在接受对话框做出最终选择后,才会更新font 属性。
MenuItem {
text: "Font"
onTriggered: fontDialog.open()
}
FontDialog {
id: fontDialog
currentFont.family: document.font
}
MyDocument {
id: document
font: fontDialog.font
}可用性
本机平台字体对话框目前在以下平台上可用:
- iOS
- Linux(使用 GTK+ 平台主题运行时)
- MacOS
在没有本机实现的平台上,Qt Labs Platform 模块使用Qt Widgets 作为后备。因此,使用Qt Labs Platform 模块中类型的应用程序应链接到QtWidgets ,并使用QApplication 代替QGuiApplication 。
要链接到QtWidgets 库,请在 qmake 项目文件中添加以下内容:
QT += widgets
在main() 中创建QApplication 的实例:
#include <QApplication> #include <QQmlApplicationEngine> int main(int argc, char *argv[]) { QApplication app(argc, argv); QQmlApplicationEngine engine; engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); return app.exec(); }
注意: Qt.labs 模块中的类型不保证在未来版本中保持兼容。
另请参阅 QtQuick.Dialogs::FontDialog 。
属性文档
currentFont : font
该属性用于保存当前在对话框中选择的字体。
与font 属性不同,当用户在对话框中选择字体时,甚至在最终选择之前,currentFont 属性都会更新。
另请参阅 font 。
font : font
该属性保存最终接受的字体。
与currentFont 属性不同,当用户在对话框中选择字体时,font 属性不会更新,只有在最终选择完成后才会更新。也就是说,当用户点击OK 接受字体后,该属性才会更新。或者,也可以处理accepted() 信号来获取最终选择。
另请参阅 currentFont 和accepted()。
options : flags
该属性包含影响对话框外观的各种选项。
默认情况下,所有选项都被禁用。
应在显示对话框之前设置选项。如果在对话框可见时设置这些选项,则不能保证立即对对话框产生影响(取决于选项和平台)。
可用选项
| 常量 | 说明 |
|---|---|
FontDialog.ScalableFonts | 显示可缩放字体。 |
FontDialog.NonScalableFonts | 显示不可缩放字体。 |
FontDialog.MonospacedFonts | 显示单行字体。 |
FontDialog.ProportionalFonts | 显示比例字体。 |
FontDialog.NoButtons | 不显示OK 和Cancel 按钮(对 "实时对话框 "有用)。 |
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.