| |
 | Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs
|
Autor
|
Thema: Makro zum öffnen eines Dialogfeldes bei Zeichnungsstart (744 mal gelesen)
|
Kloibi Mitglied

 Beiträge: 13 Registriert: 27.05.2002
|
erstellt am: 27. Feb. 2003 08:00 <-- editieren / zitieren --> Unities abgeben:         
Guten Morgen An alle VBA Kenner. Ich bräuchte ein Makro das mir jedesmal wenn jemand eine Zeichnung startet ein Dialogfeld mit Text öffnet. Bei uns arbeiten mehrere User an den selben Zeichnungen, deswegen wäre es sehr nützlich das ich wenn jemand anderer die Zeichnung startet ich ihm eine Info mit einem Textfeld geben kann, welches er lesen muß bevor er Änderungen an der Zeichnung vornehmen kann. Wenn ich das dann auch noch User abhängig machen könnte wäre das noch toller, ist aber nicht unbedingt notwendig. Weis jemand wo ich so ein Makro finden kann? Ich habe nur wenige Grundkenntnise mit VBA. Ein danke schön im voraus aus Österreich OS XP mit Map5 Kloibi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Norbert AC Mitglied

 Beiträge: 26 Registriert: 17.03.2003
|
erstellt am: 17. Mrz. 2003 17:42 <-- editieren / zitieren --> Unities abgeben:          Nur für Kloibi
Hallo Kloibi, so auf die Schnelle würde ich sagen, benutze das AcadDocument_Activate-Ereignis. Das Ding hat einen Nachteil: wenn man zwischen bereits geladenen Dokumenten wechselt, springt jedesmal das Ereignis an. Da gibt's dann aber auch noch das AcadDocument_Deactivate-Ereignis, das könnte man ja nutzen, sich einen Flag auf die bereits geladene Zeichnung zu setzen, und bei erneutem Activate wird das Flag überprüft. Einen OnLoad-Event hab ich auch schon vermisst. Gruß Norbert Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Rigobert Mitglied Konstrukteur
 
 Beiträge: 240 Registriert: 21.11.2001 SWX 2021 zu Risiken und Nebenwirkungen fragen Sie besser gar nicht erst. Visual Studio 2019
|
erstellt am: 18. Mrz. 2003 11:43 <-- editieren / zitieren --> Unities abgeben:          Nur für Kloibi
|
Kloibi Mitglied

 Beiträge: 13 Registriert: 27.05.2002
|
erstellt am: 20. Mrz. 2003 08:51 <-- editieren / zitieren --> Unities abgeben:         
Hallo Rigo, Danke Ich kann auf meinem Rechner jedoch nicht VB instal. habe nur VBA. Bei mir funktioniert (vielleicht deshalb) der Code nicht. Können Sie mir bitte noch eine kurze Anleitung u. was eventuell der Fehler sein könnte schreiben? Habe derzeit leider sehr wenig Zeit, mich damit zu beschäftigen bräuchte es aber gerade jetzt. Danke Kloibi Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Rigobert Mitglied Konstrukteur
 
 Beiträge: 240 Registriert: 21.11.2001 SWX 2021 zu Risiken und Nebenwirkungen fragen Sie besser gar nicht erst. Visual Studio 2019
|
erstellt am: 20. Mrz. 2003 16:00 <-- editieren / zitieren --> Unities abgeben:          Nur für Kloibi
Hallo Kloibi, nachfolgend der Code : Public WithEvents ACADApp As AcadApplication ' Use with Application Event Examples Private Sub Form_Load() Set ACADApp = GetObject(, "AutoCAD.Application") End Sub Private Sub ACADApp_EndOpen(ByVal FileName As String) Dim VBACode As String VBACode = "MsgBox " & Chr(34) & " Zeichnung wurde geladen : " & Chr(34) & " & " & Chr(34) & " " & FileName & " " & Chr(34) ACADApp.Eval (VBACode) End Sub
Private Sub ACADApp_BeginOpen(FileName As String) Dim VBACode As String VBACode = "MsgBox " & Chr(34) & " Zeichnung wird geladen : " & Chr(34) & " & " & Chr(34) & " " & FileName & " " & Chr(34) ACADApp.Eval (VBACode) End Sub Der Knack punkt ist eigentlich nur das Event ACADAPP_BeginOpen oder ACADApp_EndOpen diese Ereignisse löst Autocad zu Beginn und am Ende der Open-Anweisung aus.
Vielleicht gibt´s das ja auch unter VBA. Hoffe geholfen zu haben Gruß Rigo
------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kloibi Mitglied

 Beiträge: 13 Registriert: 27.05.2002
|
erstellt am: 21. Mrz. 2003 07:11 <-- editieren / zitieren --> Unities abgeben:         
|
Norbert AC Mitglied

 Beiträge: 26 Registriert: 17.03.2003
|
erstellt am: 21. Mrz. 2003 11:34 <-- editieren / zitieren --> Unities abgeben:          Nur für Kloibi
"Der Knack punkt ist eigentlich nur das Event ACADAPP_BeginOpen oder ACADApp_EndOpen diese Ereignisse löst Autocad zu Beginn und am Ende der Open-Anweisung aus." BeginOpen und EndOpen gibt's nicht in der Form, VBA ist ja wohl in APP enthalten, während ich mit VB übergeordnet auf die APP zugreife. App-Events gibt's nicht VBA, wenn doch irgendwie machbar, würd ich mich selbst sehr freuen. Gruß Norbert
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Rigobert Mitglied Konstrukteur
 
 Beiträge: 240 Registriert: 21.11.2001 SWX 2021 zu Risiken und Nebenwirkungen fragen Sie besser gar nicht erst. Visual Studio 2019
|
erstellt am: 21. Mrz. 2003 12:56 <-- editieren / zitieren --> Unities abgeben:          Nur für Kloibi
Hallo Norbert AC, unter der VBA kann ich die BeginOpen - Anweisung auch nicht finden, ich habe bei mir dem Projekt einen Verweis auf die AutoCAD2000-Typenbibliothek eingefügt , und darunter ist diese Anweisung definiert. Gruß Rigo
------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Norbert AC Mitglied

 Beiträge: 26 Registriert: 17.03.2003
|
erstellt am: 21. Mrz. 2003 15:49 <-- editieren / zitieren --> Unities abgeben:          Nur für Kloibi
ja, aber eben nur unter VB, oder? Die Activate-Geschichte müsste aber auch funktionieren, wenn auch mit etwas höherem Verwaltungsaufwand. [Diese Nachricht wurde von Norbert AC am 21. März 2003 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
RoSiNiNo Mitglied Konstrukteur
   
 Beiträge: 1126 Registriert: 09.10.2002 AEC Collection 2021 Windows 10 Pro 64bit Dell Precision Tower 5820, 32GB Nvidia Quadro P2000
|
erstellt am: 25. Mrz. 2003 08:06 <-- editieren / zitieren --> Unities abgeben:          Nur für Kloibi
|