Popup dialog with standard buttons and a title, used for short-term interaction with the user. More...
Import Statement: | import QtQuick.Controls |
Since: | Qt 5.8 |
Inherits: |
A dialog is a popup mostly used for short-term tasks and brief communications with the user. Similarly to ApplicationWindow and Page, Dialog is organized into three sections: header, contentItem, and footer.
Dialog's title is displayed by a style-specific title bar that is assigned as a dialog header by default.
Dialog's standard buttons are managed by a DialogButtonBox that is assigned as a dialog footer by default. The dialog's standardButtons property is forwarded to the respective property of the button box. Furthermore, the accepted() and rejected() signals of the button box are connected to the respective signals in Dialog.
Dialog { id: dialog title: "Title" standardButtons: Dialog.Ok | Dialog.Cancel onAccepted: console.log("Ok clicked") onRejected: console.log("Cancel clicked") }
A modal dialog blocks input to other content beneath the dialog. When a modal dialog is opened, the user must finish interacting with the dialog and close it before they can access any other content in the same window.
Dialog { id: dialog modal: true standardButtons: Dialog.Ok }
A modeless dialog is a dialog that operates independently of other content around the dialog. When a modeless dialog is opened, the user is allowed to interact with both the dialog and the other content in the same window.
Dialog { id: dialog modal: false standardButtons: Dialog.Ok }
See also DialogButtonBox and Popup Controls.
footer : Item
This property holds the dialog footer item. The footer item is positioned to the bottom, and resized to the width of the dialog. The default value is null
.
Note: Assigning a DialogButtonBox as a dialog footer automatically connects its accepted() and rejected() signals to the respective signals in Dialog.
Note: Assigning a DialogButtonBox, ToolBar, or TabBar as a dialog footer automatically sets the respective DialogButtonBox::position, ToolBar::position, or TabBar::position property to Footer
.
See also header.
header : Item
This property holds the dialog header item. The header item is positioned to the top, and resized to the width of the dialog. The default value is null
.
Note: Assigning a DialogButtonBox as a dialog header automatically connects its accepted() and rejected() signals to the respective signals in Dialog.
Note: Assigning a DialogButtonBox, ToolBar, or TabBar as a dialog header automatically sets the respective DialogButtonBox::position, ToolBar::position, or TabBar::position property to Header
.
See also footer.
[read-only, since QtQuick.Controls 2.5 (Qt 5.12)] implicitFooterHeight : real
This property holds the implicit footer height.
The value is equal to footer && footer.visible ? footer.implicitHeight : 0
.
This property was introduced in QtQuick.Controls 2.5 (Qt 5.12).
See also implicitFooterWidth and implicitHeaderHeight.
[read-only, since QtQuick.Controls 2.5 (Qt 5.12)] implicitFooterWidth : real
This property holds the implicit footer width.
The value is equal to footer && footer.visible ? footer.implicitWidth : 0
.
This property was introduced in QtQuick.Controls 2.5 (Qt 5.12).
See also implicitFooterHeight and implicitHeaderWidth.
[read-only, since QtQuick.Controls 2.5 (Qt 5.12)] implicitHeaderHeight : real
This property holds the implicit header height.
The value is equal to header && header.visible ? header.implicitHeight : 0
.
This property was introduced in QtQuick.Controls 2.5 (Qt 5.12).
See also implicitHeaderWidth and implicitFooterHeight.
[read-only, since QtQuick.Controls 2.5 (Qt 5.12)] implicitHeaderWidth : real
This property holds the implicit header width.
The value is equal to header && header.visible ? header.implicitWidth : 0
.
This property was introduced in QtQuick.Controls 2.5 (Qt 5.12).
See also implicitHeaderHeight and implicitFooterWidth.
[since QtQuick.Controls 2.3 (Qt 5.10)] result : int
This property holds the result code.
Standard result codes:
Constant | Description |
---|---|
Dialog.Accepted |
The dialog was accepted. |
Dialog.Rejected |
The dialog was rejected. |
This property was introduced in QtQuick.Controls 2.3 (Qt 5.10).
See also accept(), reject(), and done().
standardButtons : enumeration
This property holds a combination of standard buttons that are used by the dialog.
Dialog { id: dialog title: "Title" standardButtons: Dialog.Ok | Dialog.Cancel onAccepted: console.log("Ok clicked") onRejected: console.log("Cancel clicked") }
The buttons will be positioned in the appropriate order for the user's platform.
Possible flags:
Constant | Description |
---|---|
Dialog.Ok |
An "OK" button defined with the AcceptRole . |
Dialog.Open |
An "Open" button defined with the AcceptRole . |
Dialog.Save |
A "Save" button defined with the AcceptRole . |
Dialog.Cancel |
A "Cancel" button defined with the RejectRole . |
Dialog.Close |
A "Close" button defined with the RejectRole . |
Dialog.Discard |
A "Discard" or "Don't Save" button, depending on the platform, defined with the DestructiveRole . |
Dialog.Apply |
An "Apply" button defined with the ApplyRole . |
Dialog.Reset |
A "Reset" button defined with the ResetRole . |
Dialog.RestoreDefaults |
A "Restore Defaults" button defined with the ResetRole . |
Dialog.Help |
A "Help" button defined with the HelpRole . |
Dialog.SaveAll |
A "Save All" button defined with the AcceptRole . |
Dialog.Yes |
A "Yes" button defined with the YesRole . |
Dialog.YesToAll |
A "Yes to All" button defined with the YesRole . |
Dialog.No |
A "No" button defined with the NoRole . |
Dialog.NoToAll |
A "No to All" button defined with the NoRole . |
Dialog.Abort |
An "Abort" button defined with the RejectRole . |
Dialog.Retry |
A "Retry" button defined with the AcceptRole . |
Dialog.Ignore |
An "Ignore" button defined with the AcceptRole . |
Dialog.NoButton |
An invalid button. |
See also DialogButtonBox.
title : string
This property holds the dialog title.
The title is displayed in the dialog header.
Dialog { title: qsTr("About") Label { text: "Lorem ipsum..." } }
accepted()
This signal is emitted when the dialog has been accepted either interactively or by calling accept().
Note: The corresponding handler is onAccepted
.
See also rejected().
[since QtQuick.Controls 2.3 (Qt 5.10)]
applied()
This signal is emitted when the Dialog.Apply
standard button is clicked.
Note: The corresponding handler is onApplied
.
This signal was introduced in QtQuick.Controls 2.3 (Qt 5.10).
See also discarded() and reset().
[since QtQuick.Controls 2.3 (Qt 5.10)]
discarded()
This signal is emitted when the Dialog.Discard
standard button is clicked.
Note: The corresponding handler is onDiscarded
.
This signal was introduced in QtQuick.Controls 2.3 (Qt 5.10).
See also reset() and applied().
[since QtQuick.Controls 2.3 (Qt 5.10)]
helpRequested()
This signal is emitted when the Dialog.Help
standard button is clicked.
Note: The corresponding handler is onHelpRequested
.
This signal was introduced in QtQuick.Controls 2.3 (Qt 5.10).
See also accepted() and rejected().
rejected()
This signal is emitted when the dialog has been rejected either interactively or by calling reject().
Note: The corresponding handler is onRejected
.
See also accepted().
[since QtQuick.Controls 2.3 (Qt 5.10)]
reset()
This signal is emitted when the Dialog.Reset
standard button is clicked.
Note: The corresponding handler is onReset
.
This signal was introduced in QtQuick.Controls 2.3 (Qt 5.10).
See also discarded() and applied().
void accept()
Emits the accepted() signal and closes the dialog.
[since QtQuick.Controls 2.3 (Qt 5.10)]
void done(int result)
Dialog.Accepted
or Dialog.Rejected
, respectively.This method was introduced in QtQuick.Controls 2.3 (Qt 5.10).
See also accept(), reject(), and result.
void reject()
Emits the rejected() signal and closes the dialog.
[since QtQuick.Controls 2.3 (Qt 5.10)]
AbstractButton standardButton(StandardButton button)
Returns the specified standard button, or null
if it does not exist.
This method was introduced in QtQuick.Controls 2.3 (Qt 5.10).
See also standardButtons.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qml-qtquick-controls2-dialog.html