如何在QML中设置MessageDialog的默认按钮?

时间:2015-04-30 06:22:56

标签: button qml messagedialog

默认按钮是"是",但我想设置按钮"否"作为默认按钮。

怎么做?

1 个答案:

答案 0 :(得分:4)

我没有看到通过当前MessageDialog API实现此目的的任何方法,但我也想象这是非常特定于平台的,这就是隐藏它的原因。

您可以创建自己的对话框:

import QtQuick 2.3
import QtQuick.Window 2.0
import QtQuick.Controls 1.2
import QtQuick.Dialogs 1.2

Window {
    width: 500
    height: 500
    visible: true

    Dialog {
        id: dialog
        visible: true

        contentItem: FocusScope {
            Row {
                anchors.bottom: parent.bottom
                anchors.right: parent.right

                Button {
                    text: "No"
                    isDefault: true
                    focus: true
                    onClicked: dialog.close()
                }
                Button {
                    text: "Yes"
                }
            }
        }
    }
}

dialog