venerdì 7 gennaio 2011

VB.net: Creare la variabile thisdrawing con i suoi eventi

Nel passaggio dal VBA al VB.NET per Autocad è fondamentale ricreare la variabile “thisdrawing” con tutti i suoi eventi (tipo EndCommand, Activate ecc.).
Ecco un modo per farlo:
 
Imports Autodesk.AutoCAD.Interop
Imports Autodesk.AutoCAD.Interop.Common
 
Public Class Esempio
Dim AcadApp As Autodesk.AutoCAD.Interop.AcadApplication = GetObject_
(, "Autocad.Application")
Public WithEvents ThisDrawing As_
Autodesk.AutoCAD.Interop.AcadDocument = AcadApp.ActiveDocument

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As_
System.EventArgs) Handles Button1.Click
 Dim pt As Object
 Dim pt1 As Object
 Me.Visible = False
 pt = ThisDrawing.Utility.GetPoint(, "Seleziona il primo punto:")
 pt1 = ThisDrawing.Utility.GetPoint(pt, "Seleziona il secondo punto:")
 ThisDrawing.ModelSpace.AddLine(pt, pt1)
 MessageBox.Show("Linea disegnata")
 Me.Visible = True
End Sub
Private Sub ThisDrawing_EndCommand(ByVal CommandName As String)_
Handles ThisDrawing.EndCommand
 MessageBox.Show("Fine comando")
 End Sub
End Class