Fire Notification When Changing a Table in a Part Document Example (VB.NET)
This example shows how to fire a notification when a table is changed in a
part document.
'---------------------------------------------------------------
' Preconditions:
' 1. Open a part document.
' 2. Make sure that the Tools > Options > Stop VSTA
debugger on macro exit
' checkbox is not selected.
' 3. Select Insert > Tables > Bill of Materials.
' 4. Click the green check mark on the Bill of Materials PropertyManager page.
' 5. Run this macro (press F5).
' 6. Right-click a column of the table.
' 7. Select Delete > Column.
'
' Postconditions:
' 1. The column is deleted.
' 2. A message box tells you about the deletion.
' Check the taskbar for the message box.
' 3. Click OK to close the message box.
' 4. Stop the debugger.
'---------------------------------------------------------------
Imports
SolidWorks.Interop.sldworks
Imports
SolidWorks.Interop.swconst
Imports
System
Imports
System.Diagnostics
Imports
System.Collections
Partial
Class
SolidWorksMacro
Public
WithEvents
swPartDoc As
PartDoc
Public
Sub
Main()
Dim
swModel As
ModelDoc2
swModel = swApp.ActiveDoc
' Set up event
swPartDoc = swModel
AttachEventHandlers()
End
Sub
Sub
AttachEventHandlers()
AttachSWEvents()
End
Sub
Sub
AttachSWEvents()
AddHandler
swPartDoc.ModifyTableNotify,
AddressOf
Me.swPartDoc_ModifyTableNotify
End
Sub
Private
Function
swPartDoc_ModifyTableNotify(ByVal
TableAnnotation As
TableAnnotation, ByVal
TableType As
Integer,
ByVal
reason As
Integer,
ByVal
RowInfo As
Integer,
ByVal
ColumnInfo As
Integer,
ByVal
DataInfo As
String)
As
Integer
MsgBox("A
table was modified. Title: " &
TableAnnotation.Title & ",
Type: " & TableType &
", Reason code: "
& reason & ", RowInfo: "
& RowInfo & ", ColumnInfo: "
& ColumnInfo & ", DataInfo:
" & DataInfo)
End
Function
Public
swApp As
SldWorks
End
Class