Qt官方示例-Qml系统对话框

2023-03-17 15:07:58 浏览数 (3)

❝本示例演示了Qml模块中的系统对话框,其外观和行为取决于平台。❞

  该示例对话框有:颜色选择对话框,文件对话框,字体对话框,消息对话框,自定义对话框。

  FileDialog对话框用于选择单个文件,多个文件或一个目录中,这取决于它是如何配置的。

代码语言:javascript复制
FileDialog {
    id: fileDialog
    visible: fileDialogVisible.checked
    modality: fileDialogModal.checked ? Qt.WindowModal : Qt.NonModal
    title: fileDialogSelectFolder.checked ? "Choose a folder" :
        (fileDialogSelectMultiple.checked ? "Choose some files" : "Choose a file")
    selectExisting: fileDialogSelectExisting.checked
    selectMultiple: fileDialogSelectMultiple.checked
    selectFolder: fileDialogSelectFolder.checked
    nameFilters: [ "Image files (*.png *.jpg)", "All files (*)" ]
    selectedNameFilter: "All files (*)"
    sidebarVisible: fileDialogSidebarVisible.checked
    onAccepted: {
        console.log("Accepted: "   fileUrls)
        if (fileDialogOpenFiles.checked)
            for (var i = 0; i < fileUrls.length;   i)
                Qt.openUrlExternally(fileUrls[i])
    }
    onRejected: { console.log("Rejected") }
}

  ColorDialog对话框用于选择一种颜色。

代码语言:javascript复制
ColorDialog {
    id: colorDialog
    visible: colorDialogVisible.checked
    modality: colorDialogModal.checked ? Qt.WindowModal : Qt.NonModal
    title: "Choose a color"
    color: "green"
    showAlphaChannel: colorDialogAlpha.checked
    onAccepted: { console.log("Accepted: "   color) }
    onRejected: { console.log("Rejected") }
}

  该示例可以构建为独立的可执行文件,但是每种类型的对话框都在单独的Qml文件中演示,该文件也可以与qmlscene单独运行。

关于更多

  • 「QtCreator软件」可以找到:
  • 或在 以下「Qt安装目录」找到:
代码语言:javascript复制
C:Qt{你的Qt版本}Examples{你的Qt版本}quickcontrolsdialogssystemdialogs
  • 「相关链接」
代码语言:javascript复制
https://doc.qt.io/qt-5/qtquickdialogs-systemdialogs-example.html

1 人点赞