Deutsches AutoHotkey Homepage AutoHotkey Community
Wir helfen uns gegenseitig aus der Patsche
 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Variabel ins zweite Gui-Fenster übernehmen

 
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Ich brauche Hilfe!
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
thebeginner



Anmeldedatum: 03.02.2006
Beiträge: 29

BeitragVerfasst am: Di Mai 23, 2006 11:54 am    Titel: Variabel ins zweite Gui-Fenster übernehmen Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
Thalon



Anmeldedatum: 25.10.2005
Beiträge: 1878
Wohnort: Österreich

BeitragVerfasst am: Di Mai 23, 2006 12:57 pm    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
thebeginner



Anmeldedatum: 03.02.2006
Beiträge: 29

BeitragVerfasst am: Di Mai 23, 2006 4:19 pm    Titel: Antworten mit Zitat

Das sind ja viele Informationen.... Shocked

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
Benutzer-Profile anzeigen Private Nachricht senden
Thalon



Anmeldedatum: 25.10.2005
Beiträge: 1878
Wohnort: Österreich

BeitragVerfasst am: Di Mai 23, 2006 4:42 pm    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
thebeginner



Anmeldedatum: 03.02.2006
Beiträge: 29

BeitragVerfasst am: Di Mai 23, 2006 8:45 pm    Titel: Antworten mit Zitat

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 Exclamation Exclamation Exclamation

Bis dann Alex Very Happy
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Ich brauche Hilfe! Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
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