Datentyp ermitteln über Selection und AnyObject
Guten Tag zusammen!
Bin seit vor kurzem dabei die, mir die Makros-Programmierung im Selbststudium beizubringen. Auf der Suche nach einer Datentyp-Übersicht bin ich auf eine etwas ältere (noch vom 15.04.2010) Diskussion gestossen (https://ww3.cad.de/foren/ubb/Forum137/HTML/004001.shtml). Besonders interessant fand ich den abschliessenden Beitrag von DanielFr.:
Zitat:
Original erstellt von DanielFr.:
Hallo,der String den du an die SelectElement2 Methode übergibst stimmt nicht. Du musst den Datentyp (HybridBodies) als String übergeben und nicht den Standardnamen (Geometrical Set).
Du kannst dir ja ein kleines Hilfskript basteln das dir aus einer Selektion ("AnyObject") den zugehörigen Datentyp (mit der Function TypeName) in einer MsgBox ausgibt
Die Idee fand ich vielversprechend und wollte mir genau so ein Hilfsskript schreiben. Umgesetzt habe ich es folgender Massen:
Sub CATMain()
Dim UsrSel As Object
Dim A As CATBSTR
Dim Typ(0) As CATSafeArrayVariant
Typ(0) = "AnyObject"
Set UsrSel = CATIA.ActiveDocument.Selection
UsrSel.Clear
A = UsrSel.SelectElement2 (Typ, "Bitte das fragliche Element anklicken", false)
MsgBox ("Objekt-Typ ist:" & Chr(13) & Chr(10) & CStr (UsrSel.Item(1).Type) )
UsrSel.Clear
End Sub
Nur funktionieren tut es leider kaum, jedenfalls nicht so, wie ich es will. Denn, was auch immer ich dabei anklicke, es bringt mir die gleiche Meldung: «Objekt-Typ ist: AnyObject»!
Meine bescheidene Frage an der Stelle lautet: was mache ich da falsch und wie kann ich den Fehler beheben?
Für Ihre Ideen danke ich Ihnen im Voraus!
Freundliche Grüsse
Wadim
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP