Menu für Gui will nich klappen :( Topic is solved

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

webck
Posts: 14
Joined: 27 Mar 2017, 01:42

Menu für Gui will nich klappen :(  Topic is solved

27 Mar 2017, 02:01

Hallo,

mein kleines Script speichert ein paar Benutzereingaben und trägt die in einer OpenOffice-Calc-Datei ein. Klappt soweit alles prima. :)

Mein Code:

Code: Select all

; Zwei Datumsformate festlegen
FormatTime,Datum,,yyyy-MM-dd ; Für Dateinamen mit Bindestrichen
FormatTime,Datum2,,dd.MM.yyyy ; Für Calc-Tabelle mit Punkten

Gui, Color, 088A29 ; Farbe des Fensters
gui, font, s20, Verdana  ; Schriftgr. 20 Schriftart Verdana

; Erste Spalte mit Feldbezeichnungen
Gui, Add, Text,, Dateiname ohne Datum:
Gui, Add, Text,, Anzahl EuroPaletten:
Gui, Add, Text,, Gesamte Anzahl Artikel:
Gui, Add, Text,, Anzahl untersch. SKUs:
Gui, Add, Button, default, Cancel

; Zweite Spalte mit den Eingabefeldern und Variablen-Zuordnungen
Gui, Add, Edit, vdateiname ym  ; ym fuer neue Spalte
Gui, Add, ComboBox, vepal, 1||2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49|50
Gui, Add, ComboBox, vstueck, 1||2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49|50|51|52|53|54|55|56|57|58|59|60|61|62|63|64|65|66|67|68|69|70|71|72|73|74|75|76|77|78|79|80|81|82|83|84|85|86|87|88|89|90|91|92|93|94|95|96|97|98|99|100
Gui, Add, ComboBox, vskus, 1||2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20
Gui, Add, Button, default, OK

Gui, Show,x50 y50, AutoPal
return  ; Ab hier wartet das Script auf Benutzereingabe

ButtonOK:
Gui, Submit  ; Benutzereingaben in Variablen speichern

; Vorlage der Calc-Tabelle unter neuem Namen im entsprechenden Verzeichnis speichern.
FileCopy, C:\Christian\Amazon-Versand-durch-Amazon\1-Neue-FBA-Sendung.ods, C:\Christian\Amazon-Versand-durch-Amazon\1-Paletten\%Datum%-%dateiname%.ods

Sleep 1000 ; 1 Sekunde warten.

; Die neue Datei öffnen
Run C:\Christian\Amazon-Versand-durch-Amazon\1-Paletten\%Datum%-%dateiname%.ods

Sleep 8000 ; 8 Sekunden warten.

WinActivate, %Datum%-%dateiname%.ods - OpenOffice Calc ; Sicherstellen dass das neue Calc-Fenster den Focus hat.

Sleep 1000
send ^{Home}
Sleep 200
send {Down 4}			 ; 4x Pfeil nach unten druecken.
Sleep 200
send {Right 1}			 ; 1x Pfeil nach rechts druecken.
Sleep 200
SendInput, %Datum%-%dateiname%	 ; Den Dateinamen eingeben.
Sleep 200
send {Down 1}			 ; 1x Pfeil nach unten druecken.
Sleep 200
SendInput, %epal%		 ; Anzahl Europaletten eingeben.
Sleep 200
send {Down 1}			 ; 1x Pfeil nach unten druecken.
Sleep 200
SendInput, %stueck%		 ; Gesamte Stueckzahl Artikel eingeben.
Sleep 200
send {Right 2}			 ; 2x Pfeil nach rechts druecken.
Sleep 200
SendInput, %skus%		 ; Anzahl SKUs eingeben.
Sleep 200
send {Down 19}			 ; 19x Pfeil nach unten druecken.
send {Left 1}			 ; 1x Pfeil nach links druecken.
send %Datum2%			 ; Datum eingeben.
send {Down 1}			 ; 1x Pfeil nach unten druecken.
send ^s
Return

GuiEscape:
GuiClose:
ButtonCancel:
ExitApp
Jetzt möchte ich dem Gui gerne ein kleines Menu verpassen, Hilfeseiten hab ich alle durch, hab's auch schon einige Male versucht, es will einfach nich klappen. :(

Aus dem Menu heraus soll man nen bestimmten Ordner im Windows-Explorer öffnen und eine kleine Hilfe aufrufen können.

Kann mir von euch bitte jemand den Code für so ein Menu in mein Script rein basteln?

Danke für eure Hilfe!! :-)

Gruß Christian
just me
Posts: 9495
Joined: 02 Oct 2013, 08:51
Location: Germany

Re: Menu für Gui will nich klappen :(

27 Mar 2017, 03:55

Moin,

das ist an sich bis auf die Untermenüs nicht so schwer:

Code: Select all

; Zwei Datumsformate festlegen
FormatTime,Datum,,yyyy-MM-dd ; Für Dateinamen mit Bindestrichen
FormatTime,Datum2,,dd.MM.yyyy ; Für Calc-Tabelle mit Punkten

Menu, Hilfe, Add, Hilfe anzeigen, SubMenuHilfe
Menu, Ordner, Add, Ordner öffnen, SubMenuOrdner
Menu, GuiMenu, Add, &Datei, :Ordner
Menu, GuiMenu, Add, &Hilfe, :Hilfe
gui, Menu, GuiMenu

Gui, Color, 088A29 ; Farbe des Fensters
gui, font, s20, Verdana  ; Schriftgr. 20 Schriftart Verdana

; Erste Spalte mit Feldbezeichnungen
Gui, Add, Text,, Dateiname ohne Datum:
Gui, Add, Text,, Anzahl EuroPaletten:
Gui, Add, Text,, Gesamte Anzahl Artikel:
Gui, Add, Text,, Anzahl untersch. SKUs:
Gui, Add, Button, default, Cancel

; Zweite Spalte mit den Eingabefeldern und Variablen-Zuordnungen
Gui, Add, Edit, vdateiname ym  ; ym fuer neue Spalte
Gui, Add, ComboBox, vepal, 1||2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49|50
Gui, Add, ComboBox, vstueck, 1||2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49|50|51|52|53|54|55|56|57|58|59|60|61|62|63|64|65|66|67|68|69|70|71|72|73|74|75|76|77|78|79|80|81|82|83|84|85|86|87|88|89|90|91|92|93|94|95|96|97|98|99|100
Gui, Add, ComboBox, vskus, 1||2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20
Gui, Add, Button, default, OK

Gui, Show,x50 y50, AutoPal
return  ; Ab hier wartet das Script auf Benutzereingabe

SubMenuHilfe:
   ; Hier kannst Du per MsgBox oder auch in einem eigenen GUI Deine Hilfe anzeigen
   MsgBox, 0, Ich brauche, Hilfe!!!
Return

SubMenuOrdner:
   Run, C:\Windows ; oder wie Dein Orner auch heißen mag
Return

ButtonOK:
Gui, Submit  ; Benutzereingaben in Variablen speichern

; Vorlage der Calc-Tabelle unter neuem Namen im entsprechenden Verzeichnis speichern.
FileCopy, C:\Christian\Amazon-Versand-durch-Amazon\1-Neue-FBA-Sendung.ods, C:\Christian\Amazon-Versand-durch-Amazon\1-Paletten\%Datum%-%dateiname%.ods

Sleep 1000 ; 1 Sekunde warten.

; Die neue Datei öffnen
Run C:\Christian\Amazon-Versand-durch-Amazon\1-Paletten\%Datum%-%dateiname%.ods

Sleep 8000 ; 8 Sekunden warten.

WinActivate, %Datum%-%dateiname%.ods - OpenOffice Calc ; Sicherstellen dass das neue Calc-Fenster den Focus hat.

Sleep 1000
send ^{Home}
Sleep 200
send {Down 4}			 ; 4x Pfeil nach unten druecken.
Sleep 200
send {Right 1}			 ; 1x Pfeil nach rechts druecken.
Sleep 200
SendInput, %Datum%-%dateiname%	 ; Den Dateinamen eingeben.
Sleep 200
send {Down 1}			 ; 1x Pfeil nach unten druecken.
Sleep 200
SendInput, %epal%		 ; Anzahl Europaletten eingeben.
Sleep 200
send {Down 1}			 ; 1x Pfeil nach unten druecken.
Sleep 200
SendInput, %stueck%		 ; Gesamte Stueckzahl Artikel eingeben.
Sleep 200
send {Right 2}			 ; 2x Pfeil nach rechts druecken.
Sleep 200
SendInput, %skus%		 ; Anzahl SKUs eingeben.
Sleep 200
send {Down 19}			 ; 19x Pfeil nach unten druecken.
send {Left 1}			 ; 1x Pfeil nach links druecken.
send %Datum2%			 ; Datum eingeben.
send {Down 1}			 ; 1x Pfeil nach unten druecken.
send ^s
Return

GuiEscape:
GuiClose:
ButtonCancel:
ExitApp
webck
Posts: 14
Joined: 27 Mar 2017, 01:42

Re: Menu für Gui will nich klappen :(

27 Mar 2017, 04:16

Das klappt prima, danke! :)

Jetzt hab ich:

Code: Select all

; Zwei Datumsformate festlegen
FormatTime,Datum,,yyyy-MM-dd ; Für Dateinamen mit Bindestrichen
FormatTime,Datum2,,dd.MM.yyyy ; Für Calc-Tabelle mit Punkten

Menu, Hilfe, Add, Hilfe anzeigen, SubMenuHilfe
Menu, Ordner, Add, Ordner öffnen, SubMenuOrdner
Menu, GuiMenu, Add, &Datei, :Ordner
Menu, GuiMenu, Add, &Hilfe, :Hilfe
gui, Menu, GuiMenu

Gui, Color, 088A29 ; Farbe des Fensters
gui, font, s20, Verdana  ; Schriftgr. 20 Schriftart Verdana

; Erste Spalte mit Feldbezeichnungen
Gui, Add, Text,, Dateiname ohne Datum:
Gui, Add, Text,, Anzahl EuroPaletten:
Gui, Add, Text,, Gesamte Anzahl Artikel:
Gui, Add, Text,, Anzahl untersch. SKUs:
Gui, Add, Button, default, Cancel

; Zweite Spalte mit den Eingabefeldern und Variablen-Zuordnungen
Gui, Add, Edit, vdateiname ym  ; ym fuer neue Spalte
Gui, Add, ComboBox, vepal, 1||2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49|50
Gui, Add, ComboBox, vstueck, 1||2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49|50|51|52|53|54|55|56|57|58|59|60|61|62|63|64|65|66|67|68|69|70|71|72|73|74|75|76|77|78|79|80|81|82|83|84|85|86|87|88|89|90|91|92|93|94|95|96|97|98|99|100
Gui, Add, ComboBox, vskus, 1||2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20
Gui, Add, Button, default, OK

Gui, Show,x50 y50, AutoPal
return  ; Ab hier wartet das Script auf Benutzereingabe

SubMenuHilfe:
   ; Hier kannst Du per MsgBox oder auch in einem eigenen GUI Deine Hilfe anzeigen
   MsgBox, 0, Hilfe, - Dateiname ohne Datum:`nKleinbuchstaben, keine Umlaute, Das aktuelle Datum wird autom. hinzugefügt.`n`n- Anzahl EuroPaletten:`nWieviele EuroPaletten sollen gesamt versandt werden?`n`n- Gesamte Anzahl Artikel:`nWieviele Artikel sollen gesamt verschickt werden?`n`n- Anzahl untersch. SKUs:`nWieviele unterschiedliche SKUs also untersch. Artikel sollen verschickt werden?
Return

SubMenuOrdner:
   Run, C:\Christian\Amazon-Versand-durch-Amazon\1-Paletten ; oder wie Dein Orner auch heißen mag
Return

ButtonOK:
Gui, Submit  ; Benutzereingaben in Variablen speichern

; Vorlage der Calc-Tabelle unter neuem Namen im entsprechenden Verzeichnis speichern.
FileCopy, C:\Christian\Amazon-Versand-durch-Amazon\1-Neue-FBA-Sendung.ods, C:\Christian\Amazon-Versand-durch-Amazon\1-Paletten\%Datum%-%dateiname%.ods

Sleep 1000 ; 1 Sekunde warten.

; Die neue Datei öffnen
Run C:\Christian\Amazon-Versand-durch-Amazon\1-Paletten\%Datum%-%dateiname%.ods

Sleep 8000 ; 8 Sekunden warten.

WinActivate, %Datum%-%dateiname%.ods - OpenOffice Calc ; Sicherstellen dass das neue Calc-Fenster den Focus hat.

Sleep 1000
send ^{Home}
Sleep 200
send {Down 4}			 ; 4x Pfeil nach unten druecken.
Sleep 200
send {Right 1}			 ; 1x Pfeil nach rechts druecken.
Sleep 200
SendInput, %Datum%-%dateiname%	 ; Den Dateinamen eingeben.
Sleep 200
send {Down 1}			 ; 1x Pfeil nach unten druecken.
Sleep 200
SendInput, %epal%		 ; Anzahl Europaletten eingeben.
send {Del}
Sleep 200
send {Down 1}			 ; 1x Pfeil nach unten druecken.
Sleep 200
SendInput, %stueck%		 ; Gesamte Stueckzahl Artikel eingeben.
Sleep 200
send {Right 2}			 ; 2x Pfeil nach rechts druecken.
Sleep 200
SendInput, %skus%		 ; Anzahl SKUs eingeben.
Sleep 200
send {Down 19}			 ; 19x Pfeil nach unten druecken.
send {Left 1}			 ; 1x Pfeil nach links druecken.
send %Datum2%			 ; Datum eingeben.
send {Down 1}			 ; 1x Pfeil nach unten druecken.
send ^s
Return

GuiEscape:
GuiClose:
ButtonCancel:
ExitApp
Kann man die MessageBox-Zeile im Script besser lesbar speichern? Mit Zeilenumbrüchen vielleicht?

Aktuell sieht die so aus:

Code: Select all

MsgBox, 0, Hilfe, - Dateiname ohne Datum:`nKleinbuchstaben, keine Umlaute, Das aktuelle Datum wird autom. hinzugefügt.`n`n- Anzahl EuroPaletten:`nWieviele EuroPaletten sollen gesamt versandt werden?`n`n- Gesamte Anzahl Artikel:`nWieviele Artikel sollen gesamt verschickt werden?`n`n- Anzahl untersch. SKUs:`nWieviele unterschiedliche SKUs also untersch. Artikel sollen verschickt werden?
Danke & Gruß Christian
just me
Posts: 9495
Joined: 02 Oct 2013, 08:51
Location: Germany

Re: Menu für Gui will nich klappen :(

27 Mar 2017, 05:11

Siehe: Eine lange Zeile in mehreren kurzen Zeilen aufteilen
Z.B.:

Code: Select all

MsgBox, 0, Hilfe,
(
- Dateiname ohne Datum:
Kleinbuchstaben, keine Umlaute, Das aktuelle Datum wird autom. hinzugefügt.

- Anzahl EuroPaletten:`
Wieviele EuroPaletten sollen gesamt versandt werden?

- Gesamte Anzahl Artikel:
Wieviele Artikel sollen gesamt verschickt werden?

- Anzahl untersch. SKUs:
Wieviele unterschiedliche SKUs also untersch. Artikel sollen verschickt werden?
)
webck
Posts: 14
Joined: 27 Mar 2017, 01:42

Re: Menu für Gui will nich klappen :(

27 Mar 2017, 06:46

Danke just me!
Das is gleich viel besser lesbar so. :)

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: No registered users and 26 guests