Autor
|
Thema: Mapkey: Zeichnung öffnen vom Part (43899 mal gelesen)
|
Marco_Taylor Mitglied
Beiträge: 44 Registriert: 03.11.2004 WF4 M180
|
erstellt am: 10. Apr. 2006 18:15 <-- editieren / zitieren --> Unities abgeben:
@ fossyDas WshShell.AppActivate hat bei mir nicht gut geklappt. Deshalb umgehe ich das Gespringe mit Hilfe des Mapkeys: mapkey(continued) ~ Activate `main_dlg_cur` `File.psh_save`;\ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fossy Mitglied Dipl.-Ing. Maschinenbau (Kraftfahrzeugtechnik)
Beiträge: 940 Registriert: 07.02.2001 Der einzige Mensch, der sich vernünftig benimmt, ist mein Schneider. Er nimmt jedesmal neu Maß, wenn er mich trifft, während alle anderen immer die alten Maßstäbe anlegen in der Meinung, sie passten auch heute noch. (George Bernard Shaw, ir. Dramatiker, 1856-1950)
|
erstellt am: 10. Apr. 2006 12:36 <-- editieren / zitieren --> Unities abgeben:
hi @all,... schön, dass sich mitlerweile auch andere mit dem thema wsh befassen pro/e macht bei solchen sachen manchmal fenster aktiv, die garnicht im vordergrund sind!!! aus diesem grund ist es wichtig, wsh auch noch das aktive pro/e-fenster "aktiv" zu schalten (siehe WshShell.AppActivate)!
------------------ cu fossy baumrasen.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kräuselmeister Mitglied Konstruktionsingenieur
Beiträge: 3 Registriert: 27.01.2006
|
erstellt am: 07. Apr. 2006 14:10 <-- editieren / zitieren --> Unities abgeben:
Super Idee! Ich habe das Skript zusätzlich so modifiziert, dass eine NEUE Zeichnung mit demselben Dateinamen wie das aktive .prt-Modell erstellt wird. In meiner Version wird zudem ein A4-Rahmen geladen.In die config.pro kommt: Code:
!================================================ ! neue Zeichnung erstellen !================================================ mapkey ze @MAPKEY_NAMEZeichnung erstellen;\ mapkey(continued) @MAPKEY_LABELneue Zeichnung erstellen;\ mapkey(continued) ~ Activate `main_dlg_cur` `File.psh_save`;@SYSTEM\start WScript.exe ze.vbs
dazu habe ich das VB-Skript mit Namen ze.vbs im gleichen Ordner wie die config.pro gespeichert. Der Code lautet: Code:
'Option Explizit'WScript.Sleep 200 Dim Fi, Fso Set Shell = CreateObject("WScript.Shell") Set WshShell = WScript.CreateObject("WScript.Shell") Sub sk(Befehl) 'wscript.echo befehl WshShell.SendKeys(Befehl) WScript.Sleep 50 'Zeitangabe in Millisekunden End Sub 'ins Fenster Datei->speichern gehen, die Endung in .drw wechseln und den Text in die Zeischenablage kopieren sk "^s" sk "{TAB 4}" sk "{BS 4}" sk "+^{left}" sk "^c" 'zurück gehen, neue Datei erstellen und Namen einfügen sk "^a" sk "^n" sk "^v" 'Feld "Zeichnung" wählen sk "{TAB 3}" sk "{DOWN}" sk "{TAB 3}" sk "{DOWN}" sk "{TAB 2}" sk "{DOWN}" 'definitiv Zeichnung mit gewähltem Namen eratellen sk "~" '"Leer mit Formatierung" wählen sk "{TAB 1}" sk "{DOWN}" 'Zeichnungsrahmen wählen sk "{TAB 2}" sk " " sk "mein_A4-Formatrahmen.frm" sk "%f" sk "~" WScript.Quit()
Die Option force_new_file_options_dialog in config.pro darf für dieses Skript nicht auf yes gesetzt sein. Klammert man die letzten 8 Zeilen aus, kann man eine Schablone oder einen Rahmen manuell wählen. Viel Spass euer Kräuselmeister Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Marco_Taylor Mitglied
Beiträge: 44 Registriert: 03.11.2004 WF4 M180
|
erstellt am: 07. Apr. 2006 11:56 <-- editieren / zitieren --> Unities abgeben:
Probiert mal diese Version wenn's nicht läuft:'Option Explizit WScript.Sleep 00 Dim Fi, Fso Set Shell = CreateObject("WScript.Shell") Set WshShell = WScript.CreateObject("WScript.Shell") Sub sk(Befehl) 'wscript.echo befehl WshShell.SendKeys(Befehl) WScript.Sleep 00 'Zeitangabe in Millisekunden End Sub sk "^s" sk "+{TAB}" sk "+{TAB}" sk "{BS 3}" sk "drw" sk "+^{left}" sk "^c" sk "^a" sk "^o" sk "^v" sk "~" WScript.Quit() @Igzu:
9 TABs sind meiner Ansicht zu viel. Dann macht das Script einmal eine Extrarunde :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Igzu Mitglied
Beiträge: 18 Registriert: 06.04.2006 CAD. WF2.0 M150, Grafik: Quadro FX 1400, P4, 2GB RAM, Windows XP Prof. SP2
|
erstellt am: 06. Apr. 2006 18:05 <-- editieren / zitieren --> Unities abgeben:
@anagl Jetzt klappt´s! Der Tipp war super! Die erforderliche Änderung war: sk "{TAB 6}" Vielen Dank@Marco Dein Skript ist Klasse!! Auch Dir vielen Dank Igzu Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Marco_Taylor Mitglied
Beiträge: 44 Registriert: 03.11.2004 WF4 M180
|
erstellt am: 06. Apr. 2006 18:01 <-- editieren / zitieren --> Unities abgeben:
Genau wie anagl es beschrieben hat.Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
anagl Ehrenmitglied V.I.P. h.c.
Beiträge: 3982 Registriert: 28.05.2001 WF4 M200 Intralink 3.4 M62 HW diverse Das Schreiben bei CAD.de ist freiwillig und kein Muss !!!!!
|
erstellt am: 06. Apr. 2006 17:43 <-- editieren / zitieren --> Unities abgeben:
Du landest irgendwie beim Fenster Speichern nicht im EingabeFeld Probier es mal interaktiv STRG = Strg-Taste Strg-Taste +s drücken und dann sooft die Tab-Taste drücken bis der Cursor im Eingabefeld ist und dann setzt diesen Wert in das Skript ein.anstatt sk "{TAB 4}" evtl sk "{TAB 5}" oder 3 HTH ------------------ Servus Alois [Diese Nachricht wurde von anagl am 06. Apr. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Igzu Mitglied
Beiträge: 18 Registriert: 06.04.2006 CAD. WF2.0 M150, Grafik: Quadro FX 1400, P4, 2GB RAM, Windows XP Prof. SP2
|
erstellt am: 06. Apr. 2006 17:07 <-- editieren / zitieren --> Unities abgeben:
Hallo Marco,Folgendes passiert bei der schritweisen Abarbeitung des Skript´s: "1. Fenster "Speicher" -> funktioniert "2. Endung prt wird ersetzt durch drw" -> funktioniert nicht, aber "drw" wird unterhalb vom Mitteilungsbereich ( da, wo auch Tastatureingaben z.B. beim Aufruf von mapkey´s erscheinen) eingefügt und verschwindet nach ca. 1 Sekunde wieder. "3. Alles wird markiert und in die Zwischenablage kopiert " -> funkt auch nicht Nichts wird markiert. Es scheint so, als wenn die Dialogbox "Speichern" für das Skript "nicht aktiv" ist. Es wird auch nichts in die Zwischenablage kopiert. 4. Speichern wird abgebrochen 5. Fenster "Datei öffnen" 6. Name wird eingefügt und ENTER Die restlichen Schritte würden wieder funktionieren. Nochmals vielen Dank für die Mühe Igzu Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Marco_Taylor Mitglied
Beiträge: 44 Registriert: 03.11.2004 WF4 M180
|
erstellt am: 06. Apr. 2006 16:10 <-- editieren / zitieren --> Unities abgeben:
Schwer zu sagen!Ich hab folgende Vorschläge für dich: 1. Überprüfe dein Script noch mal auf Fehler. 2. Setze den fett gekennzeichneten Wert ein. Dann kannst du besser sehen was das Script macht, bzw. nicht macht. Sub sk(Befehl) 'wscript.echo befehl WshShell.SendKeys(Befehl) WScript.Sleep 2000 'Zeitangabe in Millisekunden End Sub 3. Ersetze diesen Teil:
sk "^s" sk "{TAB 4}" sk "{BS 3}" sk "drw" sk "+^{left}" sk "^c" sk "^a" sk "^o" sk "^v" sk "~" durch: 'sk "^s" 'sk "{TAB 4}" 'sk "{BS 3}" 'sk "drw" 'sk "+^{left}" 'sk "^c" 'sk "^a" 'sk "^o" 'sk "^v" 'sk "~" Entferne dann nach jedem Durchlaufstest ein ' von oben angefangen. Dann kannst du sehen wo der Fehler liegt. 1. Fenster "Speicher" 2. Endung prt wird ersetzt durch drw 3. Alles wird markiert und in die Zwischenablage kopiert 4. Speichern wird abgebrochen 5. Fenster "Datei öffnen" 6. Name wird eingefügt und ENTER [Diese Nachricht wurde von Marco_Taylor am 06. Apr. 2006 editiert.] [Diese Nachricht wurde von Marco_Taylor am 06. Apr. 2006 editiert.] [Diese Nachricht wurde von Marco_Taylor am 06. Apr. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rjordan Mitglied ProE-Admin, Konstrukteur
Beiträge: 1414 Registriert: 17.03.2003 Pro/E WF2 M230 Win 2000 Pro SP4 Intel Xeon 3,2 GHz ATI FireGL V3100
|
erstellt am: 06. Apr. 2006 15:51 <-- editieren / zitieren --> Unities abgeben:
was bei Igzu passiert, ist bei genauso.Im Datei öffnen Fenster erscheint der Inhalt der Zwischenablage, was ich vorher darein kopiert habe.
------------------ Scheinbare Rechtschreibfehler beruhen auf eine individuelle Rechtschreibreform Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |