Свойство 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 и обратная связь.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по