Frage : Wie behandele ich AutoCAD Ereignisse durch ein Delphi-Programm?

Ich deveoped eine Delphi-Funktionsbibliothek über dem AutoCAD.Application und ich würde dieser Bibliothek eine volle Unterstützung Dokumenten- und Wesenevents.
I Gebrauch Delphi 7 und AutoCAD 2010 hinzufügen. Wie kann ich das BeginSave, das EndSave, ETC… die Ereignisse verwenden, die durch Unterlagen AutoCADvba hervorgerufen werden?

Antwort : Wie behandele ich AutoCAD Ereignisse durch ein Delphi-Programm?

>> ist Hexe die Weise, die Ereignisse abzufangen, die von AutoCAD abgefeuert?

Sie abhängt davon wie AutoCAD Ereignismodell e. Ich bat Sie, AutoCAD_TLB Akte anzubringen, um aufzupassen, wie genau ACAD seine Ereignisse definiert.

Z.B. wenn Ihr AutoCAD_TLB wie dieses aussieht:

TAcadDocumentBeginSave = Verfahren (ASender: TObject; const Dateiname: WideString) des Gegenstandes;

TAcadDocument = Kategorie (TOleServer)
   ….
    Eigentum OnBeginSave: TAcadDocumentBeginSave las FOnBeginSave schreiben FOnBeginSave;
    Eigentum OnEndSave: TAcadDocumentEndSave las FOnEndSave schreiben FOnEndSave;
    Eigentum OnBeginCommand: TAcadDocumentBeginCommand las FOnBeginCommand schreiben FOnBeginCommand;
    Eigentum OnEndCommand: TAcadDocumentEndCommand las FOnEndCommand schreiben FOnEndCommand;
   …

Wenn Sie etwas Ähnliches tun können:

Art
  TForm1 = Kategorie (TForm)
  …
  privat
     Verfahren HandlerForAcadDocBeginSave (ASender: TObject; const Dateiname: WideString);
  …

Verfahren TForm1.Button1Click (ASender: TObject);
var
  Acad: IAcadApplication;
  AcadDocument: TAcadDocument;
anfangen
  Acad: = CreateOleObject („AutoCAD.Application“) als IAcadApplication;
  Acad.Visible: = ausrichten;
  AcadDocument: =TAcadDocument.Create (Anwendung);
  AcadDocument.OnBeginSave: = HandlerForAcadDocBeginSave;
  AcadDocument.ConnectTo (Acad.ActiveDocument);  
 …
Weitere Lösungen  
 
programming4us programming4us