CWaitCursor n'a pas une classe de base.
La classe CWaitCursor permet une ligne pour afficher un curseur d'attente, qui est habituellement affiché comme un sablier, tandis que vous faites une opération longue. Windows de bonnes pratiques de programmation nécessitent que vous afficher un curseur d'attente chaque fois que vous avez effectuer une opération qui prend un temps notable.
Pour afficher un curseur d'attente, juste définir une variable CWaitCursor avant le code qui effectue l'opération longue. Constructeur de l'objet provoque automatiquement le curseur d'attente à afficher.
Lorsque l'objet passe hors de portée (à la fin du bloc dans lequel l'objet CWaitCursor est déclarée), son destructeur définit le curseur pour le curseur de la précédent. En d'autres termes, l'objet effectue le nettoyage nécessaire automatiquement.
&Notenbsp ; En raison du fonctionnement leurs constructeurs et destructeurs, CWaitCursor objets sont toujours déclarées comme variables locales — ils ne sont jamais déclarés comme variables globales ni sont ils affectés à nouveau.
Si vous effectuez une opération qui pourrait causer le curseur pour modifier, telles que l'affichage d'une boîte de message ou de la boîte de dialogue, appelez la fonction membre restaurer pour restaurer le curseur d'attente. Il est permis d'appeler restaurer même lorsqu'un curseur d'attente est actuellement affiché.
Une autre façon d'afficher un curseur d'attente est d'utiliser la combinaison de CCmdTarget::BeginWaitCursor, CCmdTarget::EndWaitCursoret peut-être CCmdTarget::RestoreWaitCursor. Cependant, CWaitCursor est plus facile à utiliser parce que vous ne devez définir le curseur pour le curseur précédent lorsque vous avez terminé avec la longue opération.
&Notenbsp ; MFC définit et restaure le curseur à l'aide de la fonction virtuelle CWinApp::DoWaitCursor . Vous pouvez substituer cette fonction pour fournir un comportement personnalisé.
# include lt;afxwin.h>
Membres de la classe |  ; Graphique de la hiérarchie
Voir aussi  ;CCmdTarget::BeginWaitCursor, CCmdTarget::EndWaitCursor, CCmdTarget::RestoreWaitCursor, CWinApp::DoWaitCursor