Hallo Experten,
ich bin gerade dabei mein erstes SolidWorks C# Projekt
zu entwickeln. Dabei versuche ich den VBA-Code in C#
umzuschreiben. Bisher ging das recht erfolgreich, aber
jetzt hänge ich total.
Um Attribute sichtbar zu machen werden Callout's benutzt.
Parameter 2 von CreateCallout2 erwartet einen Pointer
auf den "CalloutHandler". In VBA wird in einer Klasse
der CalloutHandler durch "Implements SwCalloutHandler"
implementiert und damit das Ereignis "OnStringValueChanged"
zur Verfügung gestellt.
VBA-Code Ausschnit:
Formular:
Set CalloutHandler = New AttCalloutHandler
' Create a callout object
Dim swCallout As SldWorks.Callout
Set swCallout = swSelMgr.CreateCallout2(7, CalloutHandler)
Klassenmodul:
Name: AttCalloutHandler
Implements SwCalloutHandler
Private Function SwCalloutHandler_OnStringValueChanged(ByVal pManipulator As Object, _
ByVal RowID As Long, _
ByVal Text As String) As Boolean
Dim Callout As SldWorks.Callout
Set Callout = pManipulator
Debug.Print Callout.Label2(RowID)
Debug.Print " Old value: " & Callout.Value(RowID)
Debug.Print " New value: " & Text
SwCalloutHandler_OnStringValueChanged = True 'Keep change in Callout
End Function
Und wie wird das in C# gelöst???
Für Tipps und Lösungshinweise wäre ich dankbar!
Viele Grüße
PS: SWX
C# Beispiele scheinen ja eine echte Rarität zu sein.
Kennt jemand Links oder sonstige Dokumentation zu diesem Thema?
------------------
Hier kommt die Maus...
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP