任意のアイテムのプロパティ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)
}
}
}
アプリの起動直後にポップアップダイアログを適切に表示するにはどうすればよいですか?
答え1
PopupUtils.Open(dialog, id) はボタンに対して機能します。
したがって、visible プロパティを false にしてボタンを追加し、上記の「id」の代わりにその非表示ボタンの ID を渡します (もちろん引用符なし)。
ソース:
同じ問題がありました:)
答え2
何らかの理由で、 を使用すると動作します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)
}
}
}