Свойство InvisibleApp.IsUndoingOrRedoing (Visio)

Определяет, вызывается ли текущий обработчик событий в результате действия Отмена или Повтор в приложении. Только для чтения.

Синтаксис

expression. IsUndoingOrRedoing

Выражение Переменная, представляющая объект InvisibleApp .

Возвращаемое значение

Boolean

Примечания

Свойство IsUndoingOrRedoing возвращает значение True , когда приложение запускает события, связанные с действием отмены или повтора , инициированным пользователем в пользовательском интерфейсе, или инициированным клиентом автоматизации путем вызова метода Undo или Redo объекта Application .

Когда приложение вызывает обработчик событий, событие имеет "причину". Если эта причина связана с действием пользователя или другим обработчиком событий, то во время обработки этого события можно выполнять неуправляемые действия. Однако если причиной срабатывания события является действие Отмена или Повтор , обработчик событий не должен выполнять недопустимые действия. Это устраняет возможность повторного выполнения действия.

Как правило, невыполнимые действия в обработчике событий выполняются только в том случае, если это свойство имеет значение False. Вы можете выполнять неуправляемые действия, если флаг имеет значение True, но очередь повтора будет уничтожена.

Пример

В этом примере фигура добавляется в рисунок, а затем проверяется, была ли она добавлена в результате действия Отмена или Повтор .

 
Public Sub IsUndoingOrRedoing_Example() 
 
Dim vsoShape As Visio.Shape 
 
 'Draw a shape to trigger the ShapeAdded event 
 Set vsoShape = ActivePage.DrawRectangle(1,2,2,1) 
 
End Sub
 
Sub Document_ShapeAdded(ByVal Shape As IVShape) 
 
 If Not Application.IsUndoingOrRedoing Then 
 
 Debug.Print "Shape was added by new action." 
 
 End If 
 
End Sub

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.