| |  | 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 neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
|
Autor
|
Thema: Zeichnung1 bei mehreren Fenstern (MDI) (1084 mal gelesen)
|
vittorio0 Mitglied

 Beiträge: 35 Registriert: 13.07.2009 AutoCAD 2009, 2011, Access 2003
|
erstellt am: 08. Jan. 2012 23:39 <-- editieren / zitieren --> Unities abgeben:         
Liebes Forum Mit dem untenstehenden Code (in Access 2003) starte ich AutoCAD 2009 und öffne die Datei in "tocall" AutoCAD wird gestartet und die Zeichnung geöffnet. Mit acApp.Visible = True wird dann auch AutoCAD als aktives Fenster im Vordergrund dargestellt. Wenn ich dann eine weitere Zeichnung öffne in Access wird jedoch AutoCAD nicht mehr im Vordergrund dargestellt. Jede weitere Zeichnung ist die Access Applikation im Vordergrund. Warum? Mit "acApp.Visible = True" wird doch AutoCAD angezeigt. Da aber immer eine Zeichnung1 mitgeöffnet wird, aktiviere ich diese um sie danach zu schliessen.
Im Forum hab ich gelesen dass AutoCAD etwa 20 mal langsamer arbeitet wenn es von einer externen Applikation wie Excel oder in meinem Fall von Access gestartet wird. Danke für Eure Hilfe Code: ' check if acad is already loaded Dim acApp As AutoCAD.AcadApplication Dim acDok As ObjectOn Error Resume Next Set acApp = GetObject(, "AutoCAD.Application") If Err.Number Then 'MsgBox "Instanz Autocad läuft noch nicht...", vbInformation, "Autocad..." Set acApp = CreateObject("AutoCAD.Application") acApp.Documents.Open (tocall) ' z.B. "C:\dwgs\3007766.dwg" acApp.Visible = True 'Zeichnung1 wird selektiert und geschlossen, stört Documents("Zeichnung1.dwg").Activate Documents("Zeichnung1.dwg").Close False Else 'MsgBox "Instanz von Autocad läuft schon...", vbInformation, "Autocad..." acApp.Documents.Open (tocall) 'Zeichnung in tocall wird geöffnet, z.B. "C:\dwgs\342344.dwg" acApp.Visible = True 'Autocad in der Vordergrund End If On Error GoTo 0
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
    
 Beiträge: 1526 Registriert: 17.08.2005 Map 2000-2014, Rasterdesign, MapGuide, Autodesk Topobase, VS6, VS.net 2013
|
erstellt am: 09. Jan. 2012 13:01 <-- editieren / zitieren --> Unities abgeben:          Nur für vittorio0
Hallo, mit Code: AppActivate acApp.caption
bekommst du AutoCAD wieder in den Vordergrund. "acApp.Visible = True" macht AutoCAD nur sichtbar (falls verborgen geöffnet). Zitat: Im Forum hab ich gelesen dass AutoCAD etwa 20 mal langsamer arbeitet wenn es von einer externen Applikation wie Excel oder in meinem Fall von Access gestartet wird.
Wenn du AutoCAD extern ansteuerst ist es in der Tat wesenlich langsamer als wenn du es intern steuerst. Das hängt davon ab was du erreichen willst.Wilfried Stelberg ------------------ Warum lisp'eln wenn's auch anders geht. www.ib-stelberg.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
vittorio0 Mitglied

 Beiträge: 35 Registriert: 13.07.2009 AutoCAD 2009, 2011, Access 2003
|
erstellt am: 09. Jan. 2012 15:02 <-- editieren / zitieren --> Unities abgeben:         
Hallo Stelli1, AppAcivate hat funktioniert, hab das mit hide falsch versatanden. Besten Dank für die schnelle Antwort. Betreffend der Geschwindigkeit. In meinem Fall starte ich AutoCAD von Access aus und lade mir eine Zeichnung gemäss obigem code. Ist es auch langsämer für alle weiteren Operationen die danach manuell ausgeführt werden? Gruss Vittorio0 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |

| |
Stelli1 Moderator Verm.-Ing.
    
 Beiträge: 1526 Registriert: 17.08.2005 Map 2000-2014, Rasterdesign, MapGuide, Autodesk Topobase, VS6, VS.net 2013
|
erstellt am: 10. Jan. 2012 09:55 <-- editieren / zitieren --> Unities abgeben:          Nur für vittorio0
Hallo Vittorio, das mit der Geschwindigkeit kommt nur zum tragen wenn du irgenwelche Massenoperationen ausführst. Werden zum Beispiel 100000 Punkte oder Linien erzeugt dann macht das schon einen Unterschied. Beim "normalen" Handling sollte kein Unterschied sein. Deine Variante hat für dich wahrscheinlich den Vorteil, dass du deine gewohnte Umgebung und die Vorzüge von Access Formularen nutzen kannst. Wilfried Stelberg ------------------ Warum lisp'eln wenn's auch anders geht. www.ib-stelberg.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |