CWaitCursor);
Remarques
Pour afficher un curseur d'attente, vient de déclarer un objet CWaitCursor avant le code qui effectue l'opération longue. Le constructeur 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.
Vous pouvez profiter du fait que le destructeur est appelé à la fin du bloc (qui pourrait être avant la fin de la fonction) pour rendre le curseur d'attente active dans une partie seulement de votre fonction. Cette technique est montrée dans le deuxième exemple ci-dessous.
&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.
Exemple
/ / L'exemple suiva&nt illustre le cas plus courant
/ / afficher le curseur d'attente pendant quelques longues
/ traitement.
VOID LengthyFunction)
{
nbsp ; / / peut-être vous afficher une boîte de dialogue avant d'afficher un
/ / curseur d'attente
Attente de CWaitCursor ; / / afficher curseur d'attente
/ / effectuer un traitement de longue
} / / destructeur supprime automatiquement le curseur d'attente
/ / Cet exemple montre comment utiliser un objet CWaitCursor à l'intérieur d'un bloc
/ / donc le curseur d'attente est affiché uniquement si le programme est
/ / une opération longue.
VOID ConditionalFunction)
{
Si (SomeCondition)
{
Attente de CWaitCursor ; / / afficher wait curseur dans ce bloc seulement
/ / effectuer un traitement de longue
} / / à ce stade, le destructeur supprime le curseur d'attente
autre
{
/ / attendre aucun curseur--traitement seulement rapide
}
}
Aperçu CWaitCursor |  ; Graphique de la hiérarchie
Voir aussi  ;CWaitCursor::Restore, CCmdTarget::BeginWaitCursor, CCmdTarget::EndWaitCursor