精华内容
下载资源
问答
  • 颜色选择对话框 ColorDialogs 版本一 QtQuick.Dialogs 最初是不可见的,需要设置属性visible设置为true或者是调用open() 属性 color : 用户选择的颜色 currentColor : 用户当前选择的颜色 modality : 对话框应相...

    颜色选择对话框 ColorDialogs

    版本一 QtQuick.Dialogs 从QT5.1开始

    • 最初是不可见的,需要设置属性visible设置为true或者是调用open()
    • 属性
      color : 用户选择的颜色
      currentColor : 用户当前选择的颜色
      modality : 对话框应相对于包含对话框的父项的窗口是模态显示,还是相对于整个应用程序模态显示,还是非模态显示
      showAlphaChannel : bool,对话框是否将提供更改不透明度的方法
      title : string,对话框窗口的标题
      visible : bool,保存对话框是否可见
    • 方法
      void close(),关闭对话框
      void open(),显示对话框
    • 实例
      在这里插入图片描述
    import QtQuick 2.9
    import QtQuick.Window 2.2
    import QtQuick.Controls 2.2
    import QtQuick.Dialogs 1.2 //需要导入此控件
    
    Window {
        visible: true
        width: 640
        height: 480
        title: qsTr("test")
        color: colorDialog.color
    
            Button{
                text: qsTr("选择颜色")
                height: 48
                width: 120
                anchors.centerIn: parent
                MouseArea{  //鼠标事件
                    anchors.fill: parent
                    onClicked: {
                        colorDialog.open();
                    }
                }
            }
    
            ColorDialog {
                id: colorDialog
                title: qsTr("选择颜色")
                color: "#AAAAAA"
            }
    }
    

    版本二 Qt.labs.platform 从QT5.8开始

    • 修改.pro文件
      QT += quick widgets
    • 在qml文件导入模块
      import Qt.labs.platform 1.0
    • qml的Window改为ApplicationWindow, 其它控件和版本一都一样
    • 如果没有,则手动安装Qt.labs.platform
      sudo apt-get install qml-module-qt-labs-platform

    在这里插入图片描述

    import QtQuick 2.9
    import QtQuick.Window 2.2
    import QtQuick.Controls 2.2
    import Qt.labs.platform 1.0
    
    ApplicationWindow {
        visible: true
        width: 640
        height: 480
        title: qsTr("test")
        color: colorDialog.color
    
            Button{
                text: qsTr("选择颜色")
                height: 48
                width: 120
                anchors.centerIn: parent
                MouseArea{  //鼠标事件
                    anchors.fill: parent
                    onClicked: {
                        colorDialog.open();
                    }
                }
            }
    
            ColorDialog {
                id: colorDialog
                title: qsTr("选择颜色")
                color: "#AAAAAA"
            }
    }
    

    字体选择对话框 FontDialog

    • 属性font保存最终接受的字体,而currentFont保存对话框中当前选择的字体

    在这里插入图片描述

    import QtQuick 2.9
    import QtQuick.Window 2.2
    import QtQuick.Controls 2.2
    import Qt.labs.platform 1.0
    
    ApplicationWindow {
        visible: true
        width: 640
        height: 480
        title: qsTr("test")
        color: colorDialog.color
    
        Column{
                anchors.centerIn: parent
                spacing: 100
                Text{
                    id: text
                    font: fontDialog.font
                    text: "Hello World"
                }
    
                Button{
                    text: qsTr("选择字体")
                    height: 48
                    width: 120
                    MouseArea{
                        anchors.fill: parent
                        onClicked: {
                            fontDialog.open();
                        }
                    }
                }
            }
    
            FontDialog{
                id: fontDialog
                font.pixelSize: 25
                onAccepted: {
                    console.debug(qsTr("选择的字体名称是: ") + fontDialog.currentFont.family)
                    console.debug(qsTr("选择的字体大小是: ") + fontDialog.currentFont.pointSize)
                }
            }
    }
    

    文件对话框 FileDialog

    • 属性
      acceptLabel : string,保存显示在接受对话框的按钮上的标签文本
      currentFile : url,保存当前选择的文件
      currentFiles : list,保存当前选择的多个文件
      defaultSuffix : string,保留一个后缀,该后缀将添加到未指定后缀的选定文件中
      file : url,保存最终接受的文件
      fileMode : enumeration,保存对话框的模式 1)FileDialog.OpenFile 默认 选择现有文件 2)FileDialog.OpenFiles 选择多个现有文件 3)FileDialog.SaveFile 选择任何文件;此文件不必存在
      files : list,保存最终接受的文件们
      folder : url,保存选择文件的文件夹
      nameFilters : list,包含用于限制可以选择的文件类型的筛选器
      options : flags,包含影响对话框外观的各种选项
      rejectLabel : string,保存显示在拒绝对话框的按钮上的标签文本
      selectedNameFilter

    在这里插入图片描述

    import QtQuick 2.9
    import QtQuick.Window 2.2
    import QtQuick.Controls 2.2
    import Qt.labs.platform 1.0
    
    ApplicationWindow {
        visible: true
        width: 640
        height: 480
        title: qsTr("test")
        color: colorDialog.color
    
        Button{
            text: qsTr("打开文件")
            height: 48
            width: 120
            anchors.centerIn: parent
            MouseArea{
                anchors.fill: parent
                onClicked: {
                    fileDialog.open()
                }
            }
        }
    
        FileDialog {
            id: fileDialog
            fileMode: FileDialog.OpenFile
            nameFilters: ["图像文件 (*.png *.jpg *.gif *.bmp)", "全部文件 (*.*)"]
            options :FileDialog.ReadOnly
            onAccepted: {
                console.log(fileDialog.currentFile)
            }
        }
    }
    
    展开全文
  • Qml文件对话框QmlFileDialog.7z
  • Qml文件对话框

    千次阅读 2017-12-09 16:20:07
    使用Qt.labs.platform 1.0中的FileDialog 代码非常的简单FileDialog { id: fileDialog1 fileMode: FileDialog.OpenFile nameFilters: ["图像文件 (*.png *.jpg *.gif *.bmp)", "...

    使用Qt.labs.platform 1.0中的FileDialog
    代码非常的简单

    FileDialog {
            id: fileDialog1
            fileMode: FileDialog.OpenFile
            nameFilters: ["图像文件 (*.png *.jpg *.gif *.bmp)", "全部文件 (*.*)"]
            options :FileDialog.ReadOnly
        }
    

    在这里插入图片描述

    需要完整代码请访问QtQuickExamples

    联系方式:


    作者郑天佐
    QQ278969898
    主页http://www.camelstudio.cn
    邮箱camelsoft@163.com
    博客http://blog.csdn.net/zhengtianzuo06
    githubhttps://github.com/zhengtianzuo
    QQ群199672080

    在这里插入图片描述

    觉得分享的内容还不错, 就请作者喝杯咖啡吧~~

    展开全文
  • QML模态对话框Dialog关闭方式

    千次阅读 2020-04-29 19:54:38
    但实际是点到对话框外面,对话框就隐藏了,百度也没找到解决方法,只好去看源码,结果发现有closePolicy这个属性,简单有效。没有什么是源码不能解决的~ 参考致谢: 1、...

    Qt 版本:5.10

    工作用到带确认按钮的提示框,确认前不允许其它交互,用Dialog设置modal即可实现。
    但实践发现,当点到对话框外面,对话框就隐藏了,百度也没找到解决方法;
    在这里插入图片描述

    只好去看源码,结果发现有closePolicy这个属性,简单有效。没有什么是源码不能解决的~

    \Qt\Qt5.10.0\5.10.0\Src\qtquickcontrols2\src\quicktemplates2\qquickpopup_p.h

    	enum ClosePolicyFlag {
            NoAutoClose = 0x00,
            CloseOnPressOutside = 0x01,
            CloseOnPressOutsideParent = 0x02,
            CloseOnReleaseOutside = 0x04,
            CloseOnReleaseOutsideParent = 0x08,
            CloseOnEscape = 0x10
        };
        Q_DECLARE_FLAGS(ClosePolicy, ClosePolicyFlag)
        Q_FLAG(ClosePolicy)
    
        ClosePolicy closePolicy() const;
        void setClosePolicy(ClosePolicy policy);
        void resetClosePolicy();
    

    所以只需要设置这个属性为NoAutoClose即可

    Dialog{
        id:mainWindow
        visible: false
        modal: true
        closePolicy: Popup.NoAutoClose
    

    参考致谢:
    1、https://blog.csdn.net/zbw1185/article/details/78868311
    2、https://blog.csdn.net/CLP_CSDNID/article/details/80318074
    3、https://blog.csdn.net/u012199908/article/details/88861833

    展开全文
  • qml自定义模态对话框

    2019-12-06 17:09:39
    不同与Popup,这是自定义样式的模态对话框,是模态的!整个对话框作为一个独立的组件使用.........
  • Qml字体选择对话框QmlFontDialog.7z
  • Qml选择颜色对话框QmlColorDialog.7z
  • 基于QT QML的字体对话框打开,采用QML的方式进行实现的。。
  • Qml选择颜色对话框

    千次阅读 2017-12-09 16:12:07
    使用Qt.labs.platform 1.0中的ColorDialog 代码非常的简单ApplicationWindow { id: root visible: true width: 400 height: 300 ...Qml选择颜色对话框") color: colorDialog.color Button{

    使用Qt.labs.platform 1.0中的ColorDialog
    代码非常的简单

    ApplicationWindow {
        id: root
        visible: true
        width: 400
        height: 300
        title: qsTr("Qml选择颜色对话框")
        color: colorDialog.color
    
        Button{
            text: qsTr("选择颜色")
            height: 48
            width: 120
            anchors.centerIn: parent
            MouseArea{
                anchors.fill: parent
                onClicked: {
                    colorDialog.open();
                }
            }
        }
    
        ColorDialog {
            id: colorDialog
            title: qsTr("选择颜色")
            color: "#AAAAAA"
        }
    }
    

    在这里插入图片描述

    需要完整代码请访问QtQuickExamples

    联系方式:


    作者郑天佐
    QQ278969898
    主页http://www.camelstudio.cn
    邮箱camelsoft@163.com
    博客http://blog.csdn.net/zhengtianzuo06
    githubhttps://github.com/zhengtianzuo
    QQ群199672080

    在这里插入图片描述

    觉得分享的内容还不错, 就请作者喝杯咖啡吧~~

    展开全文
  • qml】在qml中自定义对话框

    千次阅读 2019-09-30 10:43:20
    MyDialog.qml内容如下: import QtQuick 2.0 import QtQuick.Controls 1.4 import QtQuick.Controls.Styles 1.4 import QtQuick.Layouts 1.3 import QtQuick.Window 2.2 Window { id: root width: 300 heig...
  • Qml字体选择对话框

    2017-12-09 16:50:52
    使用Qt.labs.platform 1.0中的FontDialog 代码非常的简单 FontDialog { id: fontDialog onAccepted: { console.debug(qsTr("选择的字体名称是: ") + fontDialog.currentFont.family) ...
  • import QtQuick 2.14 import QtQuick.Controls 2.14 import Qt.labs.platform 1.0 ApplicationWindow { ... title: qsTr("选择文件夹对话框") Rectangle { id: inputBox width: 350 height: 40 .
  • qml 用item自定义dialog 对话框 很好用的一个自定义对话框
  • 好好学习,天天向上。qml界面下拉框,对话框,checkbox
  • 对话框大小适应内容区域文本,也不排除会放入其他组件; 按钮区域肯定需要一定的自定义,比如显示隐藏哪些按钮。 2.实现 大小的适应,我让根组件的高度绑定内容的高度来适应; 内容区域的组件切换,我放了一个...
  • qml如何打开文件对话框

    千次阅读 2017-01-20 10:04:10
       在这里调用文件对话框 MenuItem{ iconSource: "res/fileText.png"; action: Action{ id: textAction; iconSource: "res/fileText.pn
  • qml 程序退出确认对话框

    千次阅读 2016-06-13 12:09:13
    MessageDialog { id : ..."qrc:///qml/UserInfo/QLogin.qml" ) } } 转载:http://blog.163.com/wslngcjsdxdr@126/blog/static/1621962302014817101237288/
  • 对话框MessageDialog 官方介绍: https://doc.qt.io/qt-5/qml-qtquick-dialogs-messagedialog.html 效果: 源码: 实现方式一: import QtQuick 2.7 import QtQuick.Controls 1.4 import QtQuick.Layouts ...
  • 颜色对话框ColorDialog 官方介绍:https://doc.qt.io/qt-5/qml-qtquick-dialogs-colordialog.html 效果: 示例: import QtQuick 2.7 import QtQuick.Controls 1.4 import QtQuick.Layouts 1.3 import Qt...
  • 对话框FileDialog 官方介绍:https://doc.qt.io/qt-5/qml-qtquick-dialogs-filedialog.html 示例: import QtQuick 2.7 import QtQuick.Controls 1.4 import QtQuick.Layouts 1.3 import QtQuick.Dialogs 1.2 ...
  • 该代码是使用qml实现创建模态对话框
  • QML之FileDialog

    千次阅读 2018-01-11 16:20:28
    FileDialog的实现是和平台相关的,如果没有可用的原生文件对话框,则会尝试创建一个QFileDialog,如果失败,怎使用默认的QML对话框。 要想在QtQuick中使用FileDialog,首先我们得导入包吧。。 import Qt
  • 1、使用Window作为容器 2、定义对话框的区域 3、实现标题栏、内容框、按钮栏

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,021
精华内容 408
关键字:

qml对话框