Undo Deleted Note and Fire Undo Pre- and Post-notify Events Example
(VB.NET)
This example demonstrates firing Undo pre- and post-notification events
in a drawing document.
'
---------------------------------------------------------------------------
' Preconditions: Open:
' <SolidWorks_install_dir>\samples\tutorial\driveworksxpress\mobile gantry.slddrw.
'
' The
right-side note in Drawing View 3 is selected and then deleted.
' The
latter action is then undone and pre- and post-notification
' events
are fired indicating that an undo action is about to occur
' and
has occurred.
'
' Postconditions: None
'
---------------------------------------------------------------------------
Imports SolidWorks.Interop.sldworks
Imports SolidWorks.Interop.swconst
Imports System
Imports System.Collections
Imports System.Windows.Forms
Partial Class SolidWorksMacro
Public
WithEvents swDrawing As DrawingDoc
Public
Sub main()
Dim
swModel As ModelDoc2
Dim
swModelDocExt As ModelDocExtension
Dim
boolstatus As Boolean
Dim
openDrawing As Hashtable
swModel
= swApp.ActiveDoc
swModelDocExt
= swModel.Extension
'
Event notification
swDrawing
= swModel
openDrawing
= New Hashtable
AttachEventhandlers()
'
Activate the drawing view that contains
'
the note you want to delete
boolstatus
= swDrawing.ActivateView("Drawing
View3")
boolstatus
= swModelDocExt.SelectByID2("DetailItem77@Drawing
View3", "NOTE", 0.3058741216774, 0.1870419466786, 0, False,
0, Nothing, 0)
'
Delete the selected note
swModel.EditDelete()
'
Undo deletion of note
'
Pre- and post-notifications fired
swModel.EditUndo2(1)
'
Rebuild the drawing
swModel.ForceRebuild3(True)
End
Sub
Sub
AttachEventHandlers()
AttachSWEvents()
End
Sub
Sub
AttachSWEvents()
AddHandler
swDrawing.UndoPostNotify, AddressOf Me.swDrawing_UndoPostNotify
AddHandler
swDrawing.UndoPreNotify, AddressOf Me.swDrawing_UndoPreNotify
End
Sub
Private
Function swDrawing_UndoPostNotify()
As Integer
'
Display message after Undo
'
NOTE: Because the message box may be displayed
'
behind an opened window, you might not see it.
'
If so, then check the Taskbar for it.
MsgBox("An
undo post-notification event has been fired.")
End
Function
Private
Function swDrawing_UndoPreNotify()
As Integer
'
Display message after Undo
'
NOTE: Because the message box may be displayed
'
behind an opened window, you might not see it.
'
If so, then check the Taskbar for it.
MsgBox("An
Undo pre-notification event has been fired.")
End
Function
'''
<summary>
'''
The SldWorks swApp variable is pre-assigned for you.
'''
</summary>
Public
swApp As SldWorks
End Class