Hallo Axel,
vielen Dank für die Info.
Es hat mir geholfen !!!
Zur Erklärung:
Das Programm ist ein VBA Projekt (Datenbank.dvb)
Ich habe eine Blattverwaltung mit unserer DBWorks geschrieben.
Jedes Blatt bekommt einen eigenen Eintrag in die Datenbank.
Beim Öffnen soll also auch das RICHTIGE LAYOUT aktiviert werden.
Dies geht z.Z. über folgende Wege:
1. ACAD.lsp Datei ruft beim Starten von ACAD einen Rahmenupdate auf.
Hierzu muß das Layout automatisch zuerst gewechselt werden:
Es geht jetzt wie folgt:
Dim MyLay As Object
Set MyLay = ThisDrawing.Layouts.item(NAME)
ThisDrawing.Active.Layout = MyLay
Dadurch wird mein NAME der aus der Datenbank kommt als Layout angewählt. !!!
2. Methode
Privat Sub AcadCommand (ByVal CommandName As String)
If CommandName = "OPEN" Then
.... siehe oben
End If
Hier fehlt mir aber noch ein Weg.
Vielleicht kanst du mir ja auch hier einen Tip geben.
Nummer 1 funktioniert beim Öffnen einer neuen ACAD Sitzung (Programm wird neu gestartet)
Nummer2 funktioniert wenn ACAD geöffnet ist UND ein Dokument in ACAD schon vorher geladen wurde. Wird ein zweites Dokument geladen spricht der OPEN befehl an.
Nummer 3 ???
Wie kann ich einen Event abfangen wenn ACAD geöffnet ist OHNE das ein Dokument ebenfalls geöffnet ist. ???
Selbst das ACAD Event Beispielprogramm (nach Installation im Ordner Exampels) spricht hier durch keine MSGBox an.
Es wäre schön, wenn ich auch den dritten Weg hinbekomme.
MfG
BerndB
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP