共用方式為


Visio) (Application.IsUndoingOrRedoing 屬性

判斷目前的事件處理常式是否因為應用程式中的 復原取消復原 動作而呼叫。 唯讀。

語法

運算式IsUndoingOrRedoing

expression 代表 Application 物件的變數。

傳回值

布林值

註解

當應用程式在觸發與 UndoRedo 動作相關的事件時 (此動作可能是使用者在使用者介面中起始的,或者自動化用戶端藉由呼叫 Application 物件的 UndoRedo 方法而起始的),IsUndoingOrRedoing 屬性會傳回 True

當應用程式呼叫事件處理常式時,事件會有「原因」。如果該原因為使用者動作或其他事件處理常式,則在處理該事件的過程中執行可復原的動作是合法的。 不過,如果事件觸發的原因是 UndoRedo 動作,則事件處理常式就不該執行取消復原動作。 這麼做會造成動作無法取消復原。

您通常只會在這個屬性為 False 時,在事件處理常式內執行復原動作。 您可以在旗標為 True 時執行復原動作,但是取消復原佇列會因而損毀。

範例

下列範例會將圖形加入到繪圖中,然後檢查該圖形的加入是否為 UndoRedo 動作的結果。

 
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 支援與意見反應