 |
AutoHotkey Community Wir helfen uns gegenseitig aus der Patsche
|
| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
thebeginner
Anmeldedatum: 03.02.2006 Beiträge: 29
|
Verfasst am: Di Mai 23, 2006 11:54 am Titel: Variabel ins zweite Gui-Fenster übernehmen |
|
|
Hallo alle zusammen,
Ich habe das erste Fenster mittels
| Code: | | Gui, 1:Show, xCenter yCenter w435 h405, Autostarter Version 1.9 |
aufgerufen. Im diesem Fenster gibt es ein Eingabe-Feld mit der Variabel AnzahlFernsehsender und ein Button namens Weiter. Wenn man auf den Button klickt wird folgender Programm-Code aufgeführt:
| Code: | ButtonWeiter:
B := 0
C := 10
D := 7
Gui, 2:Add, Text, x70 y10 w50 h20, Position
Gui, 2:Add, Text, x155 y10 w50 h20, Sender
Gui, 2:Add, Text, x250 y10 W50 h20, Kanal
Loop, %AnzahlFernsehsender%
{
B += 1
G += 1
C += 25
D += 25
Gui, 2:Add, Text, x85 y%C% W20 h20, %B%
Gui, 2:Add, ComboBox, x125 y%D% w100 vSendername_%G%, ARD|ZDF|RTL|Sat1|Pro7|Kabel1|RTL2|Super RTL|VOX|3sat|Kinderkanal|Arte|WDR|BR|HR|SW|Phoenix|BR alpha|Terranova|Das Vierte|Eurosport|DSF|Viva|MTV|n-tv|N24|CNN|RNF+|9Live|Offener Kanal|FR3|QVC|HSE|1-2-3.tv
Gui, 2:Add, Edit, x250 y%D% w30 h20 vKanalnummer_%G%
}
E := C+35
Gui, 2:Add, Button, x115 y%E% w150 h20, Senderbelegung
F := C+70
Gui, 2:Show, xCenter yCenter w375 h%F%, Sendername und -kanäle für Pinnacle Studio
return
ButtonSenderbelegung:
return |
Es wird ein zweites Fenster aufgerufen indem mehrere ComboBoxen und Eingabefelder erzeugt werden. Leider wird aber die Variabel AnzahlFernsehsender vom ersten Fenster in das Fenster nicht übernommen.
Desweiteren möchte ich, wenn im zweiten Fenster der Button Senderbelegung gedrückt wird soll das das zweite Fenster geschlossen werden und in das erste Fenster zurückkehren. Kann mir jemand bei meinem Problem helfen?
Bis dann Alex |
|
| Nach oben |
|
 |
Thalon
Anmeldedatum: 25.10.2005 Beiträge: 1878 Wohnort: Österreich
|
Verfasst am: Di Mai 23, 2006 12:57 pm Titel: |
|
|
Ich nehme einfach mal an, dass du die Variable AnzahlFernsehsender nirgends richtig zuweist (per Submit oder GuiControlGet). Denn normale Variablen sind in allen Fenstern verfügbar.
Ich kann in deinem Code-Schnippsel diesbezüglich nichts erkennen!
Zu deinem zweiten Problem: | Code: | ButtonSenderbelegung:
Gui, 2:Destroy
return | Damit wird das Fenster geschlossen und alle ungesicherten Eingaben gehen verloren. Beim nächsten Aufruf mittels "Weiter" sieht es wieder genau so aus wie beim ersten Aufruf.
Du musst aber aufpassen, denn du wirst beim erneuten Klicken auf "Weiter" während das zweite Fenster offen ist eine AHK-Fehlermeldung bekommen, da du etwas unerlaubtes versuchst (die existierende Oberfläche mit den exakt gleichen Controls zu befüllen).
Ich generiere daher üblicherweise das Fenster einmal im Hintergrund beim Starten des Programes und rufe danach nur mehr "Gui, Show" oder "Gui, Hide" auf.
Zur Positionierung gibt es auch eine einfachere Methode als die von dir verwendete!
Sieh dir vll das mal an: | Code: | AnzahlFernsehsender = 5
ButtonWeiter:
Gui, 2:Add, Text, x70 y10 w50 h20 section, Position
Gui, 2:Add, Text, x155 y10 w50 h20, Sender
Gui, 2:Add, Text, x250 y10 W50 h20, Kanal
Loop, %AnzahlFernsehsender%
{
Gui, 2:Add, Text, x85 ys+25 W20 h20 section, %A_Index%
Gui, 2:Add, ComboBox, x+25 ys+0 w100 vSendername_%A_Index%, ARD|ZDF|RTL|Sat1|Pro7|Kabel1|RTL2|Super RTL|VOX|3sat|Kinderkanal|Arte|WDR|BR|HR|SW|Phoenix|BR alpha|Terranova|Das Vierte|Eurosport|DSF|Viva|MTV|n-tv|N24|CNN|RNF+|9Live|Offener Kanal|FR3|QVC|HSE|1-2-3.tv
Gui, 2:Add, Edit, x+20 ys+0 w30 h20 vKanalnummer_%A_Index%
}
Gui, 2:Add, Button, x115 ys+35 w150 h20, Senderbelegung
Gui, 2:Show, xCenter yCenter w375 , Sendername und -kanäle für Pinnacle Studio
return |
Thalon _________________ Mein Motto: Hilfe zur Selbsthilfe!
Teildeutsche Hilfe (CHM)!! und Deutsche Online-Hilfe |
|
| Nach oben |
|
 |
thebeginner
Anmeldedatum: 03.02.2006 Beiträge: 29
|
Verfasst am: Di Mai 23, 2006 4:19 pm Titel: |
|
|
Das sind ja viele Informationen....
1. Die Eingabe wurde mit dem Befehl (siehe unten) an die Variabel übergeben
| Code: | | Gui, Add, Edit, x200 y112 w25 h20 vAnzahlFernsehsender |
2. Gui, 1:Submit
| Code: | ButtonWeiter:
Gui, 1:Submit
AnzahlFernsehsender := 5
Gui, 2:Add, Text, x70 y10 w50 h20 section, Position
Gui, 2:Add, Text, x155 y10 w50 h20, Sender
Gui, 2:Add, Text, x250 y10 W50 h20, Kanal
Loop, %AnzahlFernsehsender%
.
.
.
. |
Dabei wurde das erste Fenster durch das zweite Fenster ersetzt. Die Variabel wurde an das zweite Fesnter korrekt weitergeben. Ich möchte aber, daß das zweite Fenster ein seperates Fenster ist. Und mit Gui, 2:Submit wird die Variabel nicht an das zweite Fenster übergeben. Mit Gui,ControlGet habe ich es mittels Hilfe-System von AutoHotKey leider erfolglos versucht, vielleicht kannst du mir da mehr Informationen zu diesen Befehl geben.
3. Zur Positionierung habe ich dein Code benutzt, funktioniert soweit gut, nur wenn ich das Fenster nochmals aufrufe kommt eine Fehlermeldung. Daraufhin habe ich dein Code und mein Code miteinander verschmolzen.
| Code: | ButtonWeiter:
AnzahlFernsehsender := 5
Gui, 2:Add, Text, x70 y10 w50 h20 section, Position
Gui, 2:Add, Text, x155 y10 w50 h20, Sender
Gui, 2:Add, Text, x250 y10 W50 h20, Kanal
Loop, %AnzahlFernsehsender%
{
B += 1
Gui, 2:Add, Text, x85 ys+25 W20 h20 section, %A_Index%
Gui, 2:Add, ComboBox, x+25 ys+0 w100 vSendername_%B%, ARD|ZDF|RTL|Sat1|Pro7|Kabel1|RTL2|Super RTL|VOX|3sat|Kinderkanal|Arte|WDR|BR|HR|SW|Phoenix|BR alpha|Terranova|Das Vierte|Eurosport|DSF|Viva|MTV|n-tv|N24|CNN|RNF+|9Live|Offener Kanal|FR3|QVC|HSE|1-2-3.tv
Gui, 2:Add, Edit, x+20 ys+0 w30 h20 vKanalnummer_%B%
}
Gui, 2:Add, Button, x115 ys+35 w150 h20, Senderbelegung
Gui, 2:Show, xCenter yCenter w375 , Sendername und -kanäle für Pinnacle Studio
return |
Bei jedem erneuten Aufruf dieses Fenster werden immer wird neue Variabeln für Sendername bzw. Kanalnummer generiert, dies muß ich bei der Weitervearbeitung berücksichtigen.
3. Mit den Anweisungen Gui,Show und Gui, Hide habe ich noch nicht probiert, wird heute sicherlich noch geschehen.
Bis dann Alex |
|
| Nach oben |
|
 |
Thalon
Anmeldedatum: 25.10.2005 Beiträge: 1878 Wohnort: Österreich
|
Verfasst am: Di Mai 23, 2006 4:42 pm Titel: |
|
|
Ich erkenne keinen Fehler in diesem Testbeispiel: | Code: | Gui, Add, Edit, x200 y112 w45 h20 vAnzahlFernsehsender
Gui, Add, UpDown
Gui, Add, Button, gWeiter Default, Weiter
Gui, Show
return
Weiter:
Gui, 1:Submit
Gui, 2:Add, Text, x70 y10 w50 h20 section, Position
Gui, 2:Add, Text, x155 y10 w50 h20, Sender
Gui, 2:Add, Text, x250 y10 W50 h20, Kanal
Loop, %AnzahlFernsehsender%
{
B += 1
Gui, 2:Add, Text, x85 ys+25 W20 h20 section, %A_Index%
Gui, 2:Add, ComboBox, x+25 ys+0 w100 vSendername_%B%, ARD|ZDF|RTL|Sat1|Pro7|Kabel1|RTL2|Super RTL|VOX|3sat|Kinderkanal|Arte|WDR|BR|HR|SW|Phoenix|BR alpha|Terranova|Das Vierte|Eurosport|DSF|Viva|MTV|n-tv|N24|CNN|RNF+|9Live|Offener Kanal|FR3|QVC|HSE|1-2-3.tv
Gui, 2:Add, Edit, x+20 ys+0 w30 h20 vKanalnummer_%B%
}
Gui, 2:Add, Button, x115 ys+35 w150 h20, Senderbelegung
Gui, 2:Show, xCenter yCenter w375 , Sendername und -kanäle für Pinnacle Studio
return
2GuiEscape:
2GuiClose:
Gui, 2:Destroy
Gui, 1:Show
return | Man gibt die Zahl ein und drückt Enter (und damit den Button). Das erste Fenster verschwindet und zeigt das zweite korrekt mit der Senderanzahl an.
Drückt man Escape oder schließt das Fenster anderweitig kehrt man auf Seite 1 zurück.
Ich denke mal so ists gedacht?
Im Falle einer flexiblen GUI, würde ich die Lösung über generieren und zerstören (Destroy) sogar gegenüber der Show/Hide-Methode bevorzugen!
Thalon _________________ Mein Motto: Hilfe zur Selbsthilfe!
Teildeutsche Hilfe (CHM)!! und Deutsche Online-Hilfe |
|
| Nach oben |
|
 |
thebeginner
Anmeldedatum: 03.02.2006 Beiträge: 29
|
Verfasst am: Di Mai 23, 2006 8:45 pm Titel: |
|
|
Mit Deinem letzten Programmcode funktioniert es auch bei mir.
Du hast für den Weiter-Button ein G-Label erstellt und springst dann, wenn der Button gedrückt wird, auf die Sprungmarke Weiter:
Die ganze Zeit habe ich aber als Sprungmarke ButtonWeiter: verwendet, mit dem hat es nicht funktioniert.
Jetzt kann ich mich auf den nächsten Abschnitt stürzen.
Nochmals vielen vielen Dank
Bis dann Alex  |
|
| Nach oben |
|
 |
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|