QML控件--DialogButtonBox

news2025/1/26 14:21:25

文章目录

  • 一、控件基本信息
  • 二、控件使用
  • 三、属性成员
  • 四、附加属性成员
  • 五、成员函数
  • 六、信号

一、控件基本信息

Import Statement:import QtQuick.Controls 2.14
Since:Qt 5.8
Inherits:Container


二、控件使用

DialogButtonBox:是一个按钮容器
对话框和消息框通常以符合该平台的界面指南的顺序显示按钮,不同的平台总是有不同顺序的对话按钮,DialogButtonBox 允许开发人员向其中添加按钮,并且会自动为用户平台使用适当的顺序

在这里插入图片描述

import QtQuick 2.10
import QtQuick.Window 2.10
import QtQuick.Controls 2.3

ApplicationWindow{
    visible: true;
    width: 1280;
    height: 720;

    Row{
        DialogButtonBox {	//指定标准按钮
            standardButtons: DialogButtonBox.Ok | DialogButtonBox.Cancel

            onAccepted: console.log("Ok clicked")
            onRejected: console.log("Cancel clicked")
        }

        DialogButtonBox {	//手动指定按钮及其角色
            Button {
                text: qsTr("Close")
                DialogButtonBox.buttonRole: DialogButtonBox.DestructiveRole
            }
            Button {
                text: qsTr("Save")
                DialogButtonBox.buttonRole: DialogButtonBox.AcceptRole
            }
        }

    }

}

当在按钮框中单击按钮时,会为实际按下的按钮发出 clicked() 信号。 此外,当按下具有相应角色的按钮时,会自动发出以下信号:

  • AcceptRole、YesRole:accepted()
  • ApplyRole:applied()
  • DiscardRole:discarded()
  • HelpRole:helpRequested()
  • RejectRole、NoRole:rejected()
  • ResetRole:reset()

三、属性成员

1、alignment : flags 按钮的对齐方式

  • undefined:按钮被调整大小以填充可用空间;
  • Qt.AlignLeft:左对齐;
  • Qt.AlignRight:右对齐;
  • Qt.AlignTop:顶部对齐;
  • Qt.AlignBottom:底部对齐;
  • Qt.AlignHCenter:水平居中;
  • Qt.AlignVCenter:垂直居中

2、buttonLayout : enumeration 在排列按钮框中包含的按钮时要使用的按钮布局策略。默认值是特定于平台的

  • DialogButtonBox.WinLayout:使用适用于 Windows 应用程序的策略;
  • DialogButtonBox.MacLayout:使用适用于 macOS 上的应用程序的策略;
  • DialogButtonBox.KdeLayout:使用适合 KDE 应用程序的策略;
  • DialogButtonBox.GnomeLayout:使用适用于 GNOME 上的应用程序的策略;
  • DialogButtonBox.AndroidLayout:使用适用于 Android 上的应用程序的策略;

3、delegate : Component 用于创建标准按钮的委托

4、position : enumeration 按钮框的位置
如果按钮框被指定为 ApplicationWindow 或 Page 的页眉或页脚,则会自动设置相应的位置

  • DialogButtonBox.Header:按钮框位于顶部;
  • DialogButtonBox.Footer:按钮框位于底部。默认值;

5、standardButtons : enumeration
按钮框使用的标准按钮的组合。这些按钮将按照用户平台的适当顺序放置。

DialogButtonBox {
    standardButtons: DialogButtonBox.Ok | DialogButtonBox.Cancel
 
    onAccepted: console.log("Ok clicked")
    onRejected: console.log("Cancel clicked")
}
  • DialogBu​​ttonBox.Ok :使用 AcceptRole 定义的“确定”按钮;
  • DialogBu​​ttonBox.Open:使用 AcceptRole 定义的“打开”按钮;
  • DialogBu​​ttonBox.Save:使用 AcceptRole 定义的“保存”按钮;
  • DialogBu​​ttonBox.SaveAll:使用 AcceptRole 定义的“全部保存”按钮;
  • DialogBu​​ttonBox.Retry:使用 AcceptRole 定义的“重试”按钮;
  • DialogBu​​ttonBox.Ignore:使用 AcceptRole 定义的“忽略”按钮;
  • DialogBu​​ttonBox.Cancel:使用 RejectRole 定义的“取消”按钮;
  • DialogBu​​ttonBox.Close:使用 RejectRole 定义的“关闭”按钮;
  • DialogBu​​ttonBox.Abort:使用 RejectRole 定义的“中止”按钮;
  • DialogBu​​ttonBox.Discard:“放弃”或“不保存”按钮,取决于平台,使用 DestructiveRole 定义;
  • DialogBu​​ttonBox.Apply:使用 ApplyRole 定义的“应用”按钮;
  • DialogBu​​ttonBox.Reset:使用 ResetRole 定义的“重置”按钮;
  • DialogBu​​ttonBox.RestoreDefaults:使用 ResetRole 定义的“恢复默认值”按钮;
  • DialogBu​​ttonBox.Help:使用 HelpRole 定义的“帮助”按钮;
  • DialogBu​​ttonBox.Yes:使用 YesRole 定义的“是”按钮;
  • DialogBu​​ttonBox.YesToAll:使用 YesRole 定义的“全部同意”按钮;
  • DialogBu​​ttonBox.No:使用 NoRole 定义的“否”按钮;
  • DialogBu​​ttonBox.NoToAll:使用 NoRole 定义的“拒绝所有”按钮;
  • DialogBu​​ttonBox.NoButton:无效按钮;

四、附加属性成员

1、[read-only] buttonBox : DialogButtonBox
管理此按钮的按钮框,如果该按钮不在按钮框中,则为 null

2、buttonRole : enumeration
持有按钮框中每个按钮的角色

DialogButtonBox {
    Button {
        text: qsTr("Save")
        DialogButtonBox.buttonRole: DialogButtonBox.AcceptRole
    }
    Button {
        text: qsTr("Close")
        DialogButtonBox.buttonRole: DialogButtonBox.DestructiveRole
    }
}
  • DialogButtonBox.InvalidRole:按钮无效;
  • DialogButtonBox.AcceptRole:接受;
  • DialogButtonBox.RejectRole:取消;
  • DialogButtonBox.DestructiveRole:取消更改;
  • DialogButtonBox.ActionRole:单击按钮会导致对话框中的元素发生变化;
  • DialogButtonBox.HelpRole:请求帮助;
  • DialogButtonBox.YesRole:“是”按钮;
  • DialogButtonBox.NoRole:“否”的按钮;
  • DialogButtonBox.ResetRole:该按钮将对话框的字段重置为默认值;
  • DialogButtonBox.ApplyRole:应用当前更改;

五、成员函数

成员函数说明
AbstractButton standardButton(button)返回指定的标准按钮,如果不存在则返回 null

六、信号

成员函数说明
AbstractButton standardButton(AbstractButton button)当单击按钮框内的按钮时发出此信号

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/413558.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于 VITA57.4 标准的单通道 6GSPS 12 位采样 ADC,单通道 6GSPS 16 位采样 DAC 子卡模块

概述 FMC147 是一款单通道 6.4GSPS(或者配置成 2 通道 3.2GSPS)采样率的 12 位 AD 采集、单通道 6GSPS(或配置成 2 通道 3GSPS) 采样率 16 位 DA 输出子卡模块,该板卡为 FMC标准,符合 VITA57.4 规范&#x…

业务项目管理软件使用推荐

使用Zoho Projects的运营项目管理简化任务并最大限度地利用资源,该管理已被全球200,000多家公司选中。 一、带领您的团队取得更好的成果 Zoho Projects的多功能业务项目管理软件可帮助您的团队在所有运营流程中保持一致。监控您的运营团队的工作流程以确保每个项目顺…

IGKBoard(imx6ull)-Linux下TTY串口编程

文章目录一、TTY介绍(1)理解tty(2)tty设备节点二、tty串口应用编程(1)串口基本操作【1】打开串口【1】读写数据【1】关闭串口(2)termios 结构体(配置)&#x…

如何处理后端返回的复杂数据

将接口的复杂数据结构映射成简单的数据结构 假设我们有一个API,返回以下数据: {"id": 1,"name": "Example API","process_params": {"param1": {"name": "Parameter 1","…

企业数字化转型有哪些好处?

从马车到汽车,从写信到智能手机,每一次技术革新所带来的都是生产力大发展,小到个人、家庭,大到企业、国家,都在每一轮技术革新中获得了好处。 可以说,现在的企业数字化转型,就像是企业管理“工具…

从0学习stm32

1.STM32介绍: ST:指的是意法半导体; M:指定微处理器 使用的是ARMCortex-M3 ARM分成三个系列: Cortex-A: 针对多媒体应用(手机) Cortex-R:针对对实时性和性能有一定要求的场景 Cortex-M:针对低功耗高性…

基于html+css的自适应展示4

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

【案例实践】R语言多元数据统计分析在生态环境中的实践应用

查看原文>>>R语言生物群落分析绘图、多元统计分析、CMIP6、遥感碳储量、GEE林业、InVEST等 生态环境领域研究中常常面对众多的不同类型的数据或变量,当要同时分析多个因变量(y)时需要用到多元统计分析(multivariate sta…

vite+vue3+ts搭建项目八(打包性能优化三:使用CDN)

vitevue3ts搭建项目八(打包性能优化三:使用CDN) 本文目录vitevue3ts搭建项目八(打包性能优化三:使用CDN)使用vite-plugin-cdn-import下载npm包在vite.config.ts中通过importToCDN引入CDN参数获取方式可用的…

【事务】本地事务和分布式事务的区别

整理下事务相关的知识点: 文章目录一、事务MySQL事务事务的实现事务的ACID特性事务的隔离级别二、本地事务三、分布式事务认识分布式事务CAP理论BASE理论一、事务 先复习下数据库中学到的事务: MySQL事务 一个事务即一个完整的业务逻辑,如…

计算机组成原理——第三章存储系统(下)

提示:年年岁岁花相似,岁岁年年人不同 文章目录3.4.1 磁盘存储器3.4.2 固态硬盘SSD3.5.1 Cache的基本概念和原理3.5.2 Cache和主存的映射方式3.5.3 Cache替换算法3.5.4 Cache写策略3.6.1 页式存储3.6.2 虚拟存储器3.4.1 磁盘存储器 我们在磁性盘面上涂磁…

【hello Linux】Linux下 gitee 的使用

目录 1. 安装 git 2. gitee 的使用 2.1 注册 gitee 账号 2.2 创建项目:也就是仓库 2.3 下载项目到本地 3. 上传gitee三步走 3.1 三板斧第一招:git add 3.2 三板斧第二招:git commit 3.3 三板斧第三招:git push Linux&#x1f337…

【JavaEE】Spring项目的创建与使用

目录 创建Spring项目 创建Maven项目 引入依赖 使用镜像下载 下载依赖 添加启动类 使用Spring项目 创建Spring配置文件 存储Bean 取出并使用Bean(通过ApplicationContext接口) 通过id 通过class 通过classid(推荐) 取出并使用Bean(通过BeanFactory接口) Applicat…

从零入门激光SLAM(六)——ROS常用工具箱

大家好呀,我是一个SLAM方向的在读博士,深知SLAM学习过程一路走来的坎坷,也十分感谢各位大佬的优质文章和源码。随着知识的越来越多,越来越细,我准备整理一个自己的激光SLAM学习笔记专栏,从0带大家快速上手激…

【react 全家桶】组合组件

本人大二学生一枚&#xff0c;热爱前端&#xff0c;欢迎来交流学习哦&#xff0c;一起来学习吧。 <专栏推荐> &#x1f525;&#xff1a;js专栏 &#x1f525;&#xff1a;vue专栏 &#x1f525;&#xff1a;react专栏 文章目录09 【组合组件】1.包含关系2.特例关系问题…

P3369 【模板】普通平衡树(FHQ Treap树构建和解析)

题目描述 您需要写一种数据结构&#xff08;可参考题目标题&#xff09;&#xff0c;来维护一些数&#xff0c;其中需要提供以下操作&#xff1a; 插入 x 数删除 x 数(若有多个相同的数&#xff0c;应只删除一个)查询 x 数的排名(排名定义为比当前数小的数的个数 1 )查询排名…

【Kafka-Kerberos下执行shell命令】Kafka在Kerberos环境下如何操作shell命令

【Kafka-Kerberos下执行shell命令】Kafka在Kerberos环境下如何操作shell命令1&#xff09;jaas.conf2&#xff09;client.properties3&#xff09;执行命令当大数据集群部署了 Kerberos 认证操作之后&#xff0c;在服务器上操作 kafka shell 命令就会出现认证相关的异常&#x…

【hello Linux】Linux开发工具

目录 1. vim&#xff1a;文本编辑器 1.1 各种模式的切换 补充&#xff1a;ctrl r命令 1.2 命令模式的操作 1.3 插入模式的操作 1.4 底行模式的操作 1.5 配置vim环境 1.6 配置亲属关系 2. gcc/g&#xff1a;编译器 2.1 预处理&#xff1a; 2.2 编译&#xff1a; 2.3 汇编&#x…

Gsum: A General Framework for Guided Neural Abstractive Summarization 论文笔记

Gsum: A General Framework for Guided Neural Abstractive Summarization 论文笔记 Year: 2021 Venue: NAACL Institution: CMU Code: https://github.com/neulab/guided_summarization Overview 这篇文章力求解决的问题是如何控制文本摘要生成&#xff0c;尤其注重可信度方…

floyed 4.9

今天是周末,也就不为难自己了,学习了一下floyed算法(确实简单哈哈),这个算法也是最短路的一种 在一副图中,a到b的距离可能不是直接的ab边最短,这时候就要用到floyed的思想了,可能是a到c到b比直接a到b最短.所以我们要枚举一边才可以知道a到b的最短的路线 这就是floyed的大概 …