Je lance un processus qui effectue une opération longue, et je voudrais donner un retour visuel que quelque chose se passe, donc je veux changer le curseur en occupé et le restaurer quand je reçois le QProcess::finished
signal.
La solution Qsiris est "à l'échelle du widget". Si vous souhaitez changer le curseur pour l'ensemble de votre application, utilisez
QApplication::setOverrideCursor(Qt::WaitCursor);
et
QApplication::restoreOverrideCursor();
Remarque: Comme l'a souligné @Ehsan Khodarahmi, le curseur ne changera PAS avant de déclencher le prochain événement QT ou d'appeler manuellement QApplication :: processEvents ().
Utilisez ceci pour positionner le curseur sur le début du processus:
this->setCursor(Qt::WaitCursor);
Et cela pour restaurer le curseur à la normale (placez-le dans l'emplacement pour QProcess :: terminé)
this->setCursor(Qt::ArrowCursor);