DialogButtonBox QML 类型
用于对话框中的按钮框。 更多信息...
导入语句 | import QtQuick.Controls |
继承 |
属性
- alignment : flags
- buttonLayout : enumeration
(since QtQuick.Controls 2.5 (Qt 5.12))
- delegate : Component
- position : enumeration
- standardButtons : enumeration
附加属性
- buttonBox : DialogButtonBox
- buttonRole : enumeration
信号
- accepted()
- applied()
(since QtQuick.Controls 2.3 (Qt 5.10))
- clicked(AbstractButton button)
- discarded()
(since QtQuick.Controls 2.3 (Qt 5.10))
- helpRequested()
- rejected()
- reset()
(since QtQuick.Controls 2.3 (Qt 5.10))
方法
- AbstractButton standardButton(StandardButton button)
详细描述
对话框和信息框通常以符合该平台界面指南的顺序显示按钮。不同的平台可能有不同顺序的对话框按钮。DialogButtonBox 允许开发者为它添加按钮,并会自动使用用户平台的适当顺序。
大多数对话框按钮遵循某些角色。这些角色包括
- 接受或拒绝对话框。
- 请求帮助。
- 对对话框本身执行操作(例如重置字段或应用更改)。
还可以有其他取消对话框的方法,这可能造成破坏性后果。
大多数对话框都有几乎可以被认为是标准的按钮(例如 OK 和 Cancel 按钮)。有时以标准方式创建这些按钮很方便。
使用 DialogButtonBox 有几种方法。一种方法是指定标准按钮(例如 OK、Cancel、Save)并让按钮框设置按钮。
DialogButtonBox { standardButtons: DialogButtonBox.Ok | DialogButtonBox.Cancel onAccepted: console.log("Ok clicked") onRejected: console.log("Cancel clicked") }
或者,可以手动指定按钮及其角色
DialogButtonBox { Button { text: qsTr("Save") DialogButtonBox.buttonRole: DialogButtonBox.AcceptRole } Button { text: qsTr("Close") DialogButtonBox.buttonRole: DialogButtonBox.DestructiveRole } }
您还可以混合使用普通按钮和标准按钮。
当在按钮框中点击按钮时,会发出clicked() 信号,用于实际的按下按钮。此外,按下具有相应角色的按钮时,还会自动发出以下信号
角色 | 信号 |
---|---|
AcceptRole , YesRole | accepted() |
ApplyRole | 应用() |
DiscardRole | 丢弃() |
HelpRole | helpRequested() |
RejectRole , NoRole | rejected() |
ResetRole | 重置() |
另请参阅 Dialog.
属性文档
alignment : flags |
这个属性包含按钮的对齐方式。
可能值
常量 | 描述 |
---|---|
undefined | 按钮将调整大小以填充可用空间。 |
Qt.AlignLeft | 按钮左对齐。 |
Qt.AlignHCenter | 按钮水平居中。 |
Qt.AlignRight | 按钮右对齐。 |
Qt.AlignTop | 按钮顶对齐。 |
Qt.AlignVCenter | 按钮垂直居中。 |
Qt.AlignBottom | 按钮底对齐。 |
默认值是 undefined
。
注意: 此属性假定按钮的水平布局。当DialogButtonBox作为一个头部或页脚,适用于iOS样式,当包含超过两个按钮时,使用垂直布局。如果设置为除undefined
以外的任何值,其按钮布局将以水平进行。
buttonLayout : 枚举 |
这个属性包含当在按钮框中安排按钮时要使用的布局策略。默认值是平台特定的。
可用值
常量 | 描述 |
---|---|
DialogButtonBox.WinLayout | 使用适用于 Windows 应用的策略。 |
DialogButtonBox.MacLayout | 使用适用于 macOS 应用的策略。 |
DialogButtonBox.KdeLayout | 使用适用于 KDE 应用的策略。 |
DialogButtonBox.GnomeLayout | 使用适用于 GNOME 应用的策略。 |
DialogButtonBox.AndroidLayout | 使用适用于 Android 应用的策略。 |
这个属性在 QtQuick.Controls 2.5 (Qt 5.12)中被引入。
delegate : 组件 |
这个属性包含用于创建标准按钮的代理。
另请参阅 standardButtons.
position : 枚举 |
这个属性包含按钮框的位置。
注意: 如果按钮框被指定为ApplicationWindow或页面的头部或页脚,合适的值将自动设置。
可能值
常量 | 描述 |
---|---|
DialogButtonBox.Header | 按钮框在顶部,作为窗口或页面头部。 |
DialogButtonBox.Footer | 按钮框在底部,作为窗口或页面页脚。 |
默认值是 Footer
。
另请参阅 Dialog::header 和 Dialog::footer.
standardButtons : 枚举 |
这个属性包含按钮框使用的标准按钮组合。
DialogButtonBox { standardButtons: DialogButtonBox.Ok | DialogButtonBox.Cancel onAccepted: console.log("Ok clicked") onRejected: console.log("Cancel clicked") }
按钮将按用户平台的适当顺序定位。
可能标志
常量 | 描述 |
---|---|
DialogButtonBox.Ok | 使用 AcceptRole 定义的“确定”按钮。 |
DialogButtonBox.Open | 使用 AcceptRole 定义的“打开”按钮。 |
DialogButtonBox.Save | 使用AcceptRole 定义的“保存”按钮。 |
DialogButtonBox.Cancel | 使用RejectRole 定义的“取消”按钮。 |
DialogButtonBox.Close | 使用RejectRole 定义的“关闭”按钮。 |
DialogButtonBox.Discard | 根据平台,定义为“丢弃”或“不保存”的按钮,使用DestructiveRole 。 |
DialogButtonBox.Apply | 使用ApplyRole 定义的“应用”按钮。 |
DialogButtonBox.Reset | 使用ResetRole 定义的“重置”按钮。 |
DialogButtonBox.RestoreDefaults | 使用ResetRole 定义的“恢复默认值”按钮。 |
DialogButtonBox.Help | 使用HelpRole 定义的“帮助”按钮。 |
DialogButtonBox.SaveAll | 使用AcceptRole 定义的“全部保存”按钮。 |
DialogButtonBox.Yes | 使用YesRole 定义的“是”按钮。 |
DialogButtonBox.YesToAll | 使用YesRole 定义的“全部是”按钮。 |
DialogButtonBox.No | 使用NoRole 定义的“否”按钮。 |
DialogButtonBox.NoToAll | 使用NoRole 定义的“全部否”按钮。 |
DialogButtonBox.Abort | 使用RejectRole 定义的“中止”按钮。 |
DialogButtonBox.Retry | 使用AcceptRole 定义的“重试”按钮。 |
DialogButtonBox.Ignore | 使用AcceptRole 定义的“忽略”按钮。 |
DialogButtonBox.NoButton | 一个无效的按钮。 |
另请参阅standardButton。
附加属性文档
DialogButtonBox.buttonBox : DialogButtonBox |
这个附加属性保存管理此按钮的按钮框,如果按钮不在按钮框中,则为null
。
DialogButtonBox.buttonRole : enumeration |
这个附加属性保存按钮框中每个按钮的角色。
DialogButtonBox { Button { text: qsTr("Save") DialogButtonBox.buttonRole: DialogButtonBox.AcceptRole } Button { text: qsTr("Close") DialogButtonBox.buttonRole: DialogButtonBox.DestructiveRole } }
可用值
常量 | 描述 |
---|---|
DialogButtonBox.InvalidRole | 按钮无效。 |
DialogButtonBox.AcceptRole | 单击按钮会导致对话框接受(例如 OK)。 |
DialogButtonBox.RejectRole | 单击按钮会导致对话框拒绝(例如 Cancel)。 |
DialogButtonBox.DestructiveRole | 单击按钮会导致破坏性更改(例如,丢弃更改)并关闭对话框。 |
DialogButtonBox.ActionRole | 单击按钮会导致对话框内部元素的更改。 |
DialogButtonBox.HelpRole | 按钮可以单击以请求帮助。 |
DialogButtonBox.YesRole | 按钮是一个类似于“是”的按钮。 |
DialogButtonBox.NoRole | 按钮是一个类似于“否”的按钮。 |
DialogButtonBox.ResetRole | 按钮将对话框字段重置为默认值。 |
DialogButtonBox.ApplyRole | 按钮应用当前更改。 |
信使文档
accepted() |
此信号在定义了 AcceptRole
或 YesRole
的按钮被单击时发出。
注意:相应的处理程序是 onAccepted
。
另请参阅rejected(), clicked() 和 helpRequested。
|
clicked(AbstractButton button) |
|
helpRequested() |
rejected() |
当使用 RejectRole
或 NoRole
定义的按钮被点击时,会发出此信号。
注意:相应的处理程序是 onRejected
。
另请参阅 accepted(),helpRequested(),和 clicked。
|
方法文档
AbstractButton standardButton(StandardButton button) |
返回指定的标准 按钮,如果不存在则返回 null
。
另请参阅 standardButtons.
© 2024 Qt公司有限公司。此处包含的文档贡献者是各自版权的所有者。此处提供的文档是根据自由软件基金会发布的 GNU自由文档许可版本1.3 条款许可的。Qt及其相关商标是世界范围内芬兰和/或其他国家的 Qt公司有限公司的商标。所有其他商标均为其各自所有者的财产。