Как отобразить всплывающее диалоговое окно после запуска приложения?

Если я использую команду PopupUtils.open() в свойстве Component.onCompleted любого элемента, он ничего не делает, например:

Rectangle {
    id: rect
    height: 600
    width: height
    Component.onCompleted: {
        PopupUtils.open(dialog, rect)
        }

    Component {
         id: dialog
         Dialog {
             id: dialogue
             title: "Save file"
             text: "Are you sure that you want to save this file?"
             Button {
                 text: "cancel"
                 onClicked: PopupUtils.close(dialogue)
             }
             Button {
                 text: "overwrite previous version"
                 color: "orange"
                 onClicked: PopupUtils.close(dialogue)
             }
             Button {
                 text: "save a copy"
                 color: "orange"
                 onClicked: PopupUtils.close(dialogue)
             }
         }
    }

, как правильно отобразить всплывающее диалоговое окно сразу после запуска приложения? ?

0
задан 18 April 2013 в 06:02

2 ответа

PopupUtils.Open (dialog, id) предназначен для работы кнопок.

Следовательно, добавьте кнопку со свойством visible как false и передайте id этой скрытой кнопки вместо «id» выше (без цитаты, конечно).

Источник:

У меня была такая же проблема :)

0
ответ дан 18 April 2013 в 06:02

По какой-то причине он работает с использованием Timer, то есть:

Rectangle {
    id: rect
    height: 600
    width: height
    Component.onCompleted: {
        start_timer.start()
     }

    Timer {
        id: start_timer
        interval: 200;
        onTriggered: PopupUtils.open(dialog, rect)
    }

    Component {
         id: dialog
         Dialog {
             id: dialogue
             title: "Save file"
             text: "Are you sure that you want to save this file?"
             Button {
                 text: "cancel"
                 onClicked: PopupUtils.close(dialogue)
             }
             Button {
                 text: "overwrite previous version"
                 color: "orange"
                 onClicked: PopupUtils.close(dialogue)
             }
             Button {
                 text: "save a copy"
                 color: "orange"
                 onClicked: PopupUtils.close(dialogue)
             }
         }
    }
0
ответ дан 18 April 2013 в 06:02

Другие вопросы по тегам:

Похожие вопросы: