FontDialog
ImportStatement: import QtQuick.Dialogs 1.1
Since: Qt 5.2
Properties
currentFont: font
font : font
modality :Qt::WindowModality
monospacedFonts: bool
nonScalableFonts: bool
proportionalFonts: bool
scalableFonts: bool
title :string
visible :bool
Methods
void close()
void open()
DetailedDescription
FontDialog允许用户选择字体。窗口已开始不可见,我们需要设置visible为或调用open(),窗口才是可见的。
下面的例子打开字体选择窗口,在用户选择字体后关闭窗口。
importQtQuick 2.2
importQtQuick.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窗口和父窗口关联。所以不管我们是在一个组件中还是在一个窗口中宣部FontDialog,窗口都将出现在包含组件的窗口的中间或我们宣布的窗口的中间。如果可能,FontDialog将是平台的文件选择窗口,如果没有,则是QFontDialog的实例,如果还没有,则是QML的实现。QML的实现文件是DefaultFontDialog.qml。在这种情况下,我们可通过编辑这个文件定制文件选择窗口的内容。一些平台不支持多个顶层窗口,在这种情况下,如果文件选择窗口可见,它将自动包含在顶层窗口中。如果平台只支持一个窗口,它将替换成为顶层窗口。
PropertyDocumentation
currentFont: font
当前用户选择的字体.
font : font
用户选择并确认的字体。
modality :Qt::WindowModality
窗口的模态。模态窗口指用户在采取有效的关闭手段之前,只能在该窗口操作。非模态窗口指用户可以切换到其他窗口操作。默认非模太。模态不意味着在模态窗口关闭之前,其他窗口式阻塞的。它仅仅指用户不能同时操作其他窗口。在MacOS中,颜色窗口只能是非模太的。另外,我们可能需要编写onAccepted处理选择的字体。
monospacedFonts: bool
窗口是否显示等宽字体。
nonScalableFonts: bool
窗口是否显示非可伸缩的字体。
proportionalFonts: bool
窗口是否显示比例字体。
scalableFonts: bool
窗口是否显示可伸缩字体。
title :string
窗口的标题
visible :bool
窗口是否可见,默认为假。
MethodDocumentation
void close()
关闭窗口。
void open()
显示窗口给用户。它等效于设置visible为真。