0

クラスを使う

class DesktopFileScanner : public QThread 
{ 
void scan() { start(QThread::HighPriority)); }
void run() { /* the scanning instructions here*/}
/**/ 
};

時間のかかる(約2秒)操作を実行します。スキャナーがこれを行っている間、ビジーインジケーターを表示したいと思います。ビジーインジケーターが呼び出されます

ind

qmlシートには次のプロパティがあります。

Component.onCompleted:
{
    scanner.scan() // scanner is an instance of DesktopFileScanner
    ind.visible = false
}

このようにして、スキャナーがスキャンを終了する前にインジケーターが非表示になります。どうすれば修正できますか

ind.visible = false 

スキャナースレッドが終了した後に呼び出されます(スキャナーがスキャンを終了します)

前もって感謝します

4

1 に答える 1

1

QMLの接続アイテムを使用できます

Component.onCompleted:
{
    scanner.scan()
}

Connections
{
    target: scanner
    onFinished: ind.visible = false
}
于 2012-08-22T11:12:53.497 に答える