CWaitCursor);
Примечания
Чтобы отобразить курсор ожидания, просто объявите объект CWaitCursor перед кодом, который выполняет длительной операции. Конструктор автоматически заставляет курсор ожидания для отображения.
Когда объект выходит из области действия (на конце блока в котором объявлен объект CWaitCursor ), его деструктор устанавливает курсор на предыдущих курсор. Другими словами объект автоматически выполняет необходимой очистки.
Вы можете воспользоваться тот факт, что деструктор вызывается в конце блока (это может быть до конца функции) чтобы сделать курсор ожидания активным только частью вашей функции. Во втором примере ниже показана эта техника.
Примечание Из-за того, как их конструкторы и деструкторы работать, CWaitCursor объекты всегда объявляются как локальные переменные — они не объявлены как глобальные переменные, а также выделяются с новой.
Пример
/ / В следующем примере показан наиболее распространенный случай
/ / отображать курсор ожидания во время некоторых длительных
/ / обработки.
void Le&ngthyFunction)
{
nbsp; / / возможно отображать диалоговое окно перед отображением
/ / ждать курсора
CWaitCursor ожидания; / / дисплей ждать курсора
/ / сделать некоторые продолжительной обработки
} / / деструктор автоматически удаляет курсор ожидания
/ / В этом примере показано использование объекта CWaitCursor внутри блока
/ / Таким образом курсор ожидания отображается только в то время, как программа
/ / выполнения длительной операции.
void ConditionalFunction)
{
Если (SomeCondition)
{
CWaitCursor ожидания; / / экран ожидания в этом блоке только курсор
/ / сделать некоторые продолжительной обработки
} / / на данный момент, деструктор удаляет курсор ожидания
остальное
{
/ / не ждать курсор--только быстрая обработка
}
}
Обзор CWaitCursor | Иерархическая схема
См. также CWaitCursor::Restore, CCmdTarget::BeginWaitCursor, CCmdTarget::EndWaitCursor