| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
 | PNY wird von NVIDIA zum Händler des Jahres gewählt – zum dritten Mal in Folge, eine Pressemitteilung
|
Autor
|
Thema: Labelstyle in Civil3D ändern (798 / mal gelesen)
|
cadplayer Ehrenmitglied CADniker
    
 Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 03. Jul. 2018 08:48 <-- editieren / zitieren --> Unities abgeben:         
Hallo! Ich glaube ich mache die Sache falsch und bräuchte mal eine Erfahrung in Sachen COM-programmierung. Dazu habe ich eine Label-objekt in Civil3D - ich möchte lediglich den Style mit einem anderen, der in der database vorhanden ist ersetzen. Quasi Namen ändern, dass ist nicht umsetzbar, nach der Methodik: (vlax-get lblstyl1 'name) => "Tvärsektion" (vlax-put lblstyl1 'name "Standard") => Error: <Civil 3D API: The parameter is incorrect.> Ich wüsste jetzt auch nicht, wie man es in NET anders machen würde - es würde sicherlich zu dem gleichen Ergebnis führen. ------------------ Gruss Dirk Blog Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadplayer Ehrenmitglied CADniker
    
 Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 03. Jul. 2018 09:06 <-- editieren / zitieren --> Unities abgeben:         
Wenn ich die Eigenschaft Name mit 'Standard übergebe: (vlax-put lblstyl1 'Name 'Standard), kommt zwar keine Fehlermeldung, jedoch wird der Name auch nicht geändert. Zur Erläuterung: Der Name ist zwar eine String-Angabe, jedoch bewirkt dieser einen bestimmten Style-typ in Civil3D. Der hat eine eigene ObjectId. Gedanke: Müsste ich die ObjectId vom Style "Tvärsektion" mit der von "Standard" überschreiben ? ------------------ Gruss Dirk Blog Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADwiesel Moderator CAD4FM UG
    

 Beiträge: 1998 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 03. Jul. 2018 09:34 <-- editieren / zitieren --> Unities abgeben:          Nur für cadplayer
|

| |
cadplayer Ehrenmitglied CADniker
    
 Beiträge: 1833 Registriert: 28.04.2009 Windows 10 64bit system Autocad Civil3d 2020 ENGLISH Visual Studio 2019 OpenDCL.Runtime.9<P>
|
erstellt am: 03. Jul. 2018 10:02 <-- editieren / zitieren --> Unities abgeben:         
Was schwebt dir vor zu überschreiben mit vlax-invoke ? Code:
(vlax-for x styles (if (eq (vlax-get x 'name) "Standard") (setq replObj x replId (vla-get-ObjectID x))) (if (eq (vlax-get x 'name) "Tvärsektion") (progn (setq lblstyl1 (vlax-get-property styles 'item "Tvärsektion")) ; => #<VLA-OBJECT IAeccSectionViewStyle 000001e02347f020> (vlax-invoke lblstyl1 'Name 'Standard) ; => Error: <Member not found> (vlax-invoke-method lblstyl1 (vla-objectidtoobject (vla-get-ObjectID lblstyl1) replId)) ; => <bad argument type: VLA-OBJECT 48> ) ) )
[Diese Nachricht wurde von cadplayer am 03. Jul. 2018 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |