46

時間のかかる操作を実行するプロセスを生成し、何かが起こっていることを視覚的にフィードバックしたいので、カーソルをビジーに変更し、QProcess::finished信号を受信したときに元に戻したいと考えています。

4

2 に答える 2

85

Qsiris ソリューションは「ウィジェット ワイド」です。アプリケーション全体のカーソルを変更する場合は、使用します

QApplication::setOverrideCursor(Qt::WaitCursor);

QApplication::restoreOverrideCursor();

注: @Ehsan Khodarahmi が指摘したように、次の QT イベントをトリガーするか、手動で QApplication::processEvents() を呼び出すまで、カーソルは変更されません。

于 2012-11-21T15:11:38.657 に答える
28

これを使用して、プロセスの開始時にカーソルが待機するように設定します。

this->setCursor(Qt::WaitCursor);

そして、これはカーソルを通常の状態に戻します (これを QProcess::finished のスロットに入れます)

this->setCursor(Qt::ArrowCursor);
于 2012-11-21T14:28:56.440 に答える