| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
 | PNY: der unverzichtbare Partner für umfassende KI-Lösungen von Workstations bis zu Edge Computing und KI-Cluster-Bereitstellung, eine Pressemitteilung
|
Autor
|
Thema: Block mit Attributen (469 mal gelesen)
|
BerndE Mitglied Hochbautechniker
  
 Beiträge: 557 Registriert: 05.07.2003
|
erstellt am: 31. Mai. 2006 15:24 <-- editieren / zitieren --> Unities abgeben:         
Hi Forum, wenn ich einen Block mit Attributen mit acad-mitteln in die zeichnung einfüge, öffnet sich unmiitelbar das fenster mit meinen eingabemöglichkeiten. mache ich das gleiche mit vba, wird der block direkt eingefügt, ohne das dialogfenster zu öffnen. da es sich aber um einen block handelt, der nur die attributtexte darstellt (die zu diesem zeitpunkt ja noch nicht eingegeben sind) sehe ich den eingefügten block also nicht, kann ihn nicht anklicken und deshalb nicht ausfüllen  wie bekomme ich es hin, dass sich nach einfügen des blockreferenzobjektes das dialogfenster öffnet? bernd ------------------ Bernd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
       

 Beiträge: 13530 Registriert: 30.11.2003 ACAD 2008 Mechanical
|
erstellt am: 31. Mai. 2006 15:33 <-- editieren / zitieren --> Unities abgeben:          Nur für BerndE
|
BerndE Mitglied Hochbautechniker
  
 Beiträge: 557 Registriert: 05.07.2003
|
erstellt am: 31. Mai. 2006 15:41 <-- editieren / zitieren --> Unities abgeben:         
hi cadmium, danke für den tipp. geht kein weg an sendcommand vorbei? verwende ich eigentlich nicht gerne. für diesen fall ist es mittlerweile aber auch nicht mehr akut. da mein problem mit dem ohne inhalten nicht mehr anklickbarem block auch dann auftritt, wenn der anwender das dialogfenster ohne eintrag schließt, habe ich mich entschlossen den anwender einfach mit einer inputbox zur eingabe zu zwingen oder die einfügefunktion wird abgebrochen. bernd ------------------ Bernd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
       

 Beiträge: 13530 Registriert: 30.11.2003 ACAD 2008 Mechanical
|
erstellt am: 31. Mai. 2006 15:43 <-- editieren / zitieren --> Unities abgeben:          Nur für BerndE
naja, oder du progst ein eingabefenster das nach dem Einfügen aufgeht und die attribute bestückt... was du ja nun machst .. ------------------ - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BerndE Mitglied Hochbautechniker
  
 Beiträge: 557 Registriert: 05.07.2003
|
erstellt am: 31. Mai. 2006 15:46 <-- editieren / zitieren --> Unities abgeben:         
|
egug Mitglied

 Beiträge: 42 Registriert: 11.11.2001
|
erstellt am: 09. Jun. 2006 21:34 <-- editieren / zitieren --> Unities abgeben:          Nur für BerndE
hier eventuell einen Ansatz wie es lösbar ist. ich addiere einen Block, schaue hat er Attribute, wenn ja fülle ich in einer anderen Form eine Combobox mit dem Attributnamen und in einer zweiten Combobox den zugehörigen Wert der änderbar ist. Hier mal das Codestück : Do While cnt = 1 plp = ThisDrawing.Utility.GetPoint(, "Component Plazierungspunkt") insertionPoint(0) = plp(0): insertionPoint(1) = plp(1): insertionPoint(2) = 0 Set blockRefObj = ThisDrawing.ModelSpace.InsertBlock(insertionPoint, Comp, 1, 1, 1, rota) If (smash = 1) Then blockRefObj.Explode blockRefObj.Delete Else If (blockRefObj.HasAttributes = True) Then varAttributes = blockRefObj.GetAttributes max_ndx = UBound(varAttributes) ReDim tag_array(max_ndx) For k = 0 To max_ndx tag_array(k) = "" Next For i = LBound(varAttributes) To UBound(varAttributes) Signalschaltung_TagEdit.ComboBox2.AddItem (varAttributes(i).textString) Next Signalschaltung_TagEdit.ComboBox2.ListIndex = 0 Load Signalschaltung_TagEdit Signalschaltung_TagEdit.Show For i = LBound(varAttributes) To UBound(varAttributes) varAttributes(i).textString = tag_array(i) Next blockRefObj.Update End If End If If (CheckBox5.Value = True) Then cnt = 2 End If Loop
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |