BusyIndicator
長いプロセスが進行中であることを示したいと思います。問題は、実行しても表示されず、後でプロセスが完了すると表示されることです。ドキュメントによると
ビジー インジケーターは、コンテンツが読み込まれている間、またはリソースが利用可能になるのを待って UI がブロックされている間のアクティビティを示すために使用する必要があります。
元のコードに基づいた最小限のコードを作成しました
Window {
id: win
width: 300
height: 300
property bool run : false
Rectangle {
anchors.fill: parent
BusyIndicator {
anchors.centerIn: parent
running: run
}
MouseArea {
anchors.fill: parent
onClicked: {
run = true
for(var a=0;a<1000000;a++) { console.log(a) }
run = false
}
}
}
}
をクリックすると、計算が完了するまでの時間Rectangle
を表示したいと思います。BusyIndicator
例として、ここでは for ループを使用しました。実際のシナリオでは、関数 (データベースに約 1000 行を挿入する) をContextProperty
. ただし、その場合もBusyIndicator
は表示されません。
私はそれを正しい方法でやっていますか?または、それを行うための最良の方法は何でしょうか?