Document.BeginCustomUndoAction - метод (издатель)

Указывает отправную точку и метку (текстовое описание) группы действий, которые переносятся в оболочку для создания единого действия.

Метод EndCustomUndoAction используется для указания конечной точки действий, используемых для создания единственного действия отмены. Упакованную группу действий можно отменить одним действием.

Синтаксис

выражение. BeginCustomUndoAction (Имя действия)

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

Параметры

Имя Обязательный или необязательный Тип данных Описание
ActionName Обязательный String Метка, соответствующая однократному действию отмены. Эта метка появляется, когда вы выбираете стрелку рядом с кнопкой "Отменить" на панели инструментов Standard.

Примечания

Следующие методы объекта Document недоступны в рамках настраиваемого действия отмены. Ошибка времени выполнения возвращается, если любой из этих методов вызывается в пользовательском действии отмены:

  • Close
  • MailMerge.DataSource.Close
  • PrintOut
  • Redo
  • Save
  • SaveAs
  • Undo
  • UndoClear
  • UpdateOLEObjects

Метод BeginCustomUndoAction должен быть вызван до вызова метода EndCustomUndoAction . Ошибка времени выполнения возвращается, если EndCustomUndoAction вызывается перед BeginCustomUndoAction.

Вложение настраиваемого действия отмены в другое настраиваемое действие отмены разрешено, но вложенное настраиваемое действие отмены не имеет никакого эффекта. Активно только самое внешнее настраиваемое действие отмены.

Пример

Следующий пример содержит два настраиваемых действия отмены. Первый создается на первой странице активной публикации. Метод BeginCustomUndoAction используется для указания точки, в которой должно начинаться настраиваемое действие отмены. Выполняются шесть отдельных действий, которые затем упаковываются в одно действие с вызовом EndCustomUndoAction.

Текст в текстовом фрейме, созданном в ходе первого пользовательского действия отмены, затем проверяется, чтобы определить, является ли шрифт Verdana. Если нет, вызывается метод Undo с UndoActionsAvailable, переданным в качестве параметра. В этом случае доступно только одно действие отмены. Таким образом, вызов метода Undo отменяет только одно действие, но это одно действие объединило шесть действий в одно.

Затем создается второе действие, которое также может быть отменено позже с помощью одной операции.

Dim thePage As page 
Dim theShape As Shape 
Dim theDoc As Publisher.Document 
 
Set theDoc = ActiveDocument 
Set thePage = theDoc.Pages(1) 
 
With theDoc 
 ' The following six actions are wrapped to create one 
 ' custom undo action named "Add Rectangle and Courier Text". 
 .BeginCustomUndoAction ("Add Rectangle and Courier Text") 
 With thePage 
 Set theShape = .Shapes.AddShape(msoShapeRectangle, _ 
 75, 75, 190, 30) 
 With theShape.TextFrame.TextRange 
 .Font.Size = 14 
 .Font.Bold = msoTrue 
 .Font.Name = "Courier" 
 .Text = "This font is Courier." 
 End With 
 End With 
 .EndCustomUndoAction 
 
 If Not thePage.Shapes(1).TextFrame.TextRange.Font.Name = "Verdana" Then 
 ' This call to Undo will undo all actions that are available. 
 ' In this case, there is only one action that can be undone. 
 .Undo (.UndoActionsAvailable) 
 ' A new custom undo action is created with a name of 
 ' "Add Balloon and Verdana Text". 
 .BeginCustomUndoAction ("Add Balloon and Verdana Text") 
 With thePage 
 Set theShape = .Shapes.AddShape(msoShapeBalloon, _ 
 75, 75, 190, 30) 
 With theShape.TextFrame.TextRange 
 .Font.Size = 11 
 .Font.Name = "Verdana" 
 .Text = "This font is Verdana." 
 End With 
 End With 
 .EndCustomUndoAction 
 End If 
End With

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

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