Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  Attribut extern mittels VB 6.0 erstellen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
  
PNY präsentiert die PRO Elite™ High Endurance microSD-Flash-Speicherkarten für Videoüberwachung und kontinuierliche Aufzeichnung, eine Pressemitteilung
Autor Thema:  Attribut extern mittels VB 6.0 erstellen (1486 mal gelesen)
max-84
Mitglied


Sehen Sie sich das Profil von max-84 an!   Senden Sie eine Private Message an max-84  Schreiben Sie einen Gästebucheintrag für max-84

Beiträge: 7
Registriert: 28.07.2005

erstellt am: 01. Jun. 2006 14:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

ich will von einer VB .exe auf Autocad zugreifen um in der aktuellen Zeichnung ein Atribut zu erstellen (attdef).

versucht hatte ich es mit :


Code:
Dim height As Double
Dim Point(0-2) As Double

Set ThisDrawing = autocad.Application.ActiveDocument

    Point(0) = 0
    Point(1) = -5
    Point(2) = 0

    height = 2

Set AcadAttribute = ThisDrawing.ModelSpace.AddAttribute(height, acAttributeModePreset, "", Point, "NO_ATT", "1")
    AcadAttribute.Update


Allerdings konnte ich nicht herrausfinden wie ich extern auf AcadAttribute zugreifen kann.

Bin noch nicht so fit was VB angeht, deswegen wäre ich über jede Hilfe dankbar.


Max

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Stelli1
Moderator
Verm.-Ing.


Sehen Sie sich das Profil von Stelli1 an!   Senden Sie eine Private Message an Stelli1  Schreiben Sie einen Gästebucheintrag für Stelli1

Beiträge: 1526
Registriert: 17.08.2005

Map 2000-2014, Rasterdesign,
MapGuide, Autodesk Topobase,
VS6, VS.net 2013

erstellt am: 01. Jun. 2006 16:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für max-84 10 Unities + Antwort hilfreich

Hallo Max,

also in VB (6?) musst du erst das AutoCAD Objekt "holen".
Mit GetObject kannst du auf eine laufende Instanz von AutoCAD zugreifen. Im Beispiel entspricht dann AcadDoc dem Objekt Thisdrawing in VBA.
Attribute werden sinnvollerweise an Blöcke gehängt. Im Beispiel wird ein Attribut(definition) an die Blockdefinition angehängt.
Ist ein Block bereits eingefügt, kannst du mit HasAttributtes abfragen ob dieser Block ein angehängtes Attribut hat.

Code:

Sub Block_Att()
    ' AutoCAD als Verweis einbinden
    Dim AcadApp As AcadApplication
    Dim AcadDoc As AcadDocument
    Dim BlockDef As AcadBlock
    Dim Kreis As AcadCircle
    Dim InsPkt(0 To 2) As Double
    Dim Attr As AcadAttribute
   
    Set AcadApp = GetObject(, "AutoCAD.Application")
    Set AcadDoc = AcadApp.ActiveDocument
   
    Set BlockDef = AcadDoc.Blocks.Add(InsPkt, "NeuerBlock")
    Set Kreis = BlockDef.AddCircle(InsPkt, 10)
    Kreis.color = acByBlock
   
    Set Attr = BlockDef.AddAttribute(2.5, acAttributeModeNormal, "Eingabe: ", InsPkt, "FeldEingabe", "")

End Sub



Stelli

------------------
Warum lisp'eln wenn's auch anders geht.
www.ib-stelberg.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

max-84
Mitglied


Sehen Sie sich das Profil von max-84 an!   Senden Sie eine Private Message an max-84  Schreiben Sie einen Gästebucheintrag für max-84

Beiträge: 7
Registriert: 28.07.2005

erstellt am: 01. Jun. 2006 17:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

vielen Dank für die schnelle Hilfe,
Deklarationsfehler mit ThisDrawing...

Jetzt funktionierts wie geplant.

Gruß Max

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz