Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable Topic is solved
Moderator: jNizM
-
- Posts: 69
- Joined: 04 Feb 2020, 02:47
Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Hallo Zusammen,
besteht die Möglichkeit gezielte Informationen aus einem String (der in einem Eingabefeld steht) herauszufiltern und als Variablen weiter zu verarbeiten?
Als Beispiel taucht der String "ABC1234???" in einer Eingabemaske auf. AHK erzeugt aus diesem Inhalt dann 3 Variablen:
%VAR1% - diese Variable enthält die Zeichen ABC (Stelle 1-3)
%VAR2% - diese Variable enthält die Zeichen 1234 (Stelle 4 -7)
%VAR3% - diese Variable enthält die Zeichen ??? (Stelle 8-10)
Die Inhalte der Variablen sollen über die Position im Code herausgefiltert werden.
Im Nachgang sollen die Variablen separat weiter verarbeitet werden...
Grüße
besteht die Möglichkeit gezielte Informationen aus einem String (der in einem Eingabefeld steht) herauszufiltern und als Variablen weiter zu verarbeiten?
Als Beispiel taucht der String "ABC1234???" in einer Eingabemaske auf. AHK erzeugt aus diesem Inhalt dann 3 Variablen:
%VAR1% - diese Variable enthält die Zeichen ABC (Stelle 1-3)
%VAR2% - diese Variable enthält die Zeichen 1234 (Stelle 4 -7)
%VAR3% - diese Variable enthält die Zeichen ??? (Stelle 8-10)
Die Inhalte der Variablen sollen über die Position im Code herausgefiltert werden.
Im Nachgang sollen die Variablen separat weiter verarbeitet werden...
Grüße
-
- Posts: 69
- Joined: 04 Feb 2020, 02:47
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Hallo haichen,
anbei ein Test und ich stolpere wieder über die gLabel
Im Edit soll der Text eingegeben werden. Durch den Button sollen dann die Inhalte aus dem Text gezielt als Msgbox dargestellt werden.
Geht das als gLabel oder muss ich hier grundsätzlich anders vorgehen?
anbei ein Test und ich stolpere wieder über die gLabel
Code: Select all
Gui, Add, Edit, x42 y69 w360 h80 gEingabe,
Gui, Add, Button, x302 y189 w100 h30 gButton , Button
Gui, Add, Text, x42 y39 w360 h20 , Code eingeben
; Generated using SmartGUI Creator 4.0
Gui, Show, x127 y87 h379 w479, New GUI Window
Return
GuiClose:
ExitApp
Button:
Var1 := SubStr, Eingabe, 1, 4
MsgBox,Folgende Variablen kenne ich `n test1 %Var1% `ntest2 `ntest3
return
Geht das als gLabel oder muss ich hier grundsätzlich anders vorgehen?
Die reinste Form des Wahnsinns ist es, alles so zu belassen wie es ist und zu hoffen, dass sich etwas ändert [Albert Einstein]
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Zweite Zeile bei deinem Code: gEingabe heißt, dass du in dem Editfeld bei einer Eingabe zu dem Label (Unterroutine) namens Eingabe springst. Dort führst du den Skriptcode aus.
Es gibt auch immer eine Fehlermeldung, wenn ein solches Label nicht existiert.
Du willst aber, dass der Inhalt des Editfeldes in einer Variablen namens Eingabe gespeichert wird. Dafür mußt du vEingabe schreiben.
In der Subroutine (Label) Button muß noch ein Gui, Submit, NoHide eingefügt werden, damit wird dann der Inhalt des Editfeldes in der Variablen Eingabe gespeichert wird.
Die Funktion Substr() hast du falsch verwendet. Im link sind ein paar Beispiele.
Ich habe mal meine Anmerkungen in dein Skript eingebaut.
Es gibt auch immer eine Fehlermeldung, wenn ein solches Label nicht existiert.
Du willst aber, dass der Inhalt des Editfeldes in einer Variablen namens Eingabe gespeichert wird. Dafür mußt du vEingabe schreiben.
In der Subroutine (Label) Button muß noch ein Gui, Submit, NoHide eingefügt werden, damit wird dann der Inhalt des Editfeldes in der Variablen Eingabe gespeichert wird.
Die Funktion Substr() hast du falsch verwendet. Im link sind ein paar Beispiele.
Ich habe mal meine Anmerkungen in dein Skript eingebaut.
Code: Select all
Gui, Add, Edit, x42 y69 w360 h80 vEingabe,
Gui, Add, Button, x302 y189 w100 h30 gButton , Button
Gui, Add, Text, x42 y39 w360 h20 , Code eingeben
; Generated using SmartGUI Creator 4.0
Gui, Show, x127 y87 h379 w479, New GUI Window
Return
GuiClose:
ExitApp
Button:
Gui, Submit , NoHide ;https://ahkde.github.io/docs/commands/Gui.htm#Submit
Var1 := SubStr(Eingabe, 1, 4)
Var2 := SubStr(Eingabe, 5, 7)
Var3 := SubStr(Eingabe, 8, 17)
MsgBox,Folgende Variablen kenne ich `n test1 %Var1% `ntest2 %Var2% `ntest3 %Var3%
return
-
- Posts: 5
- Joined: 02 Jun 2020, 03:27
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Hallo Zusammen,
leider geht mein alter Account nicht mehr, deshalb von nun an als Optimus PrimeII. Fragt lieber nicht weshalb
@haichen: Dein Skript funktioniert und soweit habe ich das Thema auch verstanden.
Die Informationen daraus habe ich nun weiter verwendet und stolpere wieder über das G-Label.
Die Idee: Inhalt der Variable nutzen um gezielt Aktionen auszuführen:
Wenn im Edit an der richtigen Position die richtige Zahl auftaucht und der Startbutton gedrückt wurde, soll Checkbox 1 aktiviert werden. Alle anderen Zustände deaktivieren die Checkbox. Auch hier erhalte ich wieder einen Fehler wegen dem G-Label. Weiß jemand was noch zu beachten ist?
leider geht mein alter Account nicht mehr, deshalb von nun an als Optimus PrimeII. Fragt lieber nicht weshalb
@haichen: Dein Skript funktioniert und soweit habe ich das Thema auch verstanden.
Die Informationen daraus habe ich nun weiter verwendet und stolpere wieder über das G-Label.
Die Idee: Inhalt der Variable nutzen um gezielt Aktionen auszuführen:
Code: Select all
Gui, Add, Edit, x202 y209 w460 h30 r1 vEingabe,
Gui, Add, Button, x682 y209 w140 h30 gStart, Start
Gui, Add, CheckBox, gCheckbox x22 y289 w190 h30 , Parameter 1
Start:
Var1 := SubStr(Eingabe, 11, 1) ;Für CB1
If (%Var1% =1) {
GuiControl, , Checkbox, 1
}else{
GuiControl, , Checkbox, 0
}
Sleep, 2000
MsgBox,geht
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Wäre ja mal nett den Fehler 1:1 zu sehen zu bekommen! Dazu den Fehler provozieren, bei Anzeige der Fehlermeldung Ctrl-c drücken, und anschließend ins Forum pusten.
Verdacht: du hast zwar ein gLabel im GUI-command gesetzt, allerdings danach die zugehörige Sprungmarke nicht angelegt!?
2ter Verdacht: das gLabel hätte eigentlich eine Variable werden sollen, denn ansonsten fehlt diese zur Zuordnung + Auswertung der GUI-Inhalte!
Zudem scheint dir die Verwendung von Variablen bzgl expression-Schreibweise noch immer nicht geläufig zu sein: (%variable% != variable)
... ud als einer der Moderatoren dieses Forum darf ich dir final nun genau diese Frage stellen: "Warum geht dein alter Account nicht mehr?!"
Verdacht: du hast zwar ein gLabel im GUI-command gesetzt, allerdings danach die zugehörige Sprungmarke nicht angelegt!?
2ter Verdacht: das gLabel hätte eigentlich eine Variable werden sollen, denn ansonsten fehlt diese zur Zuordnung + Auswertung der GUI-Inhalte!
Zudem scheint dir die Verwendung von Variablen bzgl expression-Schreibweise noch immer nicht geläufig zu sein: (%variable% != variable)
... ud als einer der Moderatoren dieses Forum darf ich dir final nun genau diese Frage stellen: "Warum geht dein alter Account nicht mehr?!"
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
gCheckbox in Gui, Add, CheckBox, gCheckbox x22 y289 w190 h30 , Parameter 1 soll doch bestimmt keine Sprungmarke zum Label Checkbox sein.
-
- Posts: 5
- Joined: 02 Jun 2020, 03:27
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Hallo ihr 2, anbei der Code:
Ansonsten war es so gedacht wie haichen es beschrieben hat
Zum Account schicke ich eine PN an Dich Bobo.
Fehlertext ist im Anhang
Code: Select all
Gui, Show, x205 y106 h719 w663 , Spielwiese
Gui, Color, FFFFFF
Gui, Destroy
OnMessage(0x53, "WM_HELP")
Gui, Font, S12
Gui, Add, Edit, x202 y209 w460 h30 r1 vEingabe,
Gui, Add, Button, x682 y209 w140 h30 gStart, Start
Gui, Add, Text, x202 y179 w460 h20 , Text hier eingeben
Gui, Add, CheckBox, gCheckbox x22 y289 w190 h30 , Parameter 1
Gui, Add, CheckBox, x22 y329 w190 h30 , Parameter 2
Gui, Add, CheckBox, x22 y369 w190 h30 , Parameter 3
Gui, Add, CheckBox, x22 y409 w190 h30 , Parameter 4
Gui, Add, CheckBox, x22 y449 w190 h30 , Parameter 5
Gui, Add, CheckBox, x22 y489 w190 h30 , Parameter 6
Gui, Add, Radio, x262 y289 w170 h30 , Parameter 7
Gui, Add, Radio, x262 y329 w170 h30 , Parameter 8
Gui, Add, Radio, x262 y369 w170 h30 , Parameter 9
Gui, Add, Radio, x262 y409 w170 h30 , Parameter 10
Gui, Add, Radio, x262 y449 w170 h30 , Parameter 11
Gui, Add, Radio, x262 y489 w170 h30 , Parameter 12
Gui, Add, DropDownList, r4 x472 y289 w190 h30 , DDL1|DDL2|DDL3
Gui, Add, DropDownList, r4 x472 y329 w190 h21 , 25`%|50`%|75`%|100`%
Gui, Add, DropDownList, r4 x472 y369 w190 h21 , DDL4|DDL5|DDL6|DDL7
Gui, Add, Edit, r1 x472 y409 w190 h30 ,
Gui, Add, Edit, r1 x472 y449 w190 h30 ,
Gui, Add, Edit, r1 x472 y489 w190 h30 ,
; Generated using SmartGUI Creator 4.0
Gui, Show, x127 y87 h706 w857, New GUI Window
Return
GuiClose:
ExitApp
Start:
Gui, Submit , NoHide ;https ahkde.github.io /docs/commands/Gui.htm#Submit Broken Link for safety
Var1 := SubStr(Eingabe, 11, 1) ;Für CB1
Var2 := SubStr(Eingabe, 12, 1)
Var3 := SubStr(Eingabe, 13, 1)
Var4 := SubStr(Eingabe, 14, 1)
Var5 := SubStr(Eingabe, 15, 1)
Var6 := SubStr(Eingabe, 16, 1)
Var7 := SubStr(Eingabe, 17, 1) ; Für Radio
Var8 := SubStr(Eingabe, 18, 1)
Var9 := SubStr(Eingabe, 19, 1)
Var10 := SubStr(Eingabe, 20, 1)
Var11 := SubStr(Eingabe, 21, 1)
Var12 := SubStr(Eingabe, 22, 1)
Var13 := SubStr(Eingabe, 23, 1) ; Für Listbox
Var14 := SubStr(Eingabe, 24, 1)
Var15 := SubStr(Eingabe, 25, 1)
Var16 := SubStr(Eingabe, 26, 5) ; Buchstaben
Var17 := SubStr(Eingabe, 31, 5) ; Zahlen
Var18 := SubStr(Eingabe, 36, 8) ; Text
If (%Var1% =1) {
GuiControl, , Checkbox, 1
}else{
GuiControl, , Checkbox, 0
}
Sleep, 2000
MsgBox,Folgende Variablen kenne ich `n test1 %Var1% `ntest2 %Var2% `ntest3 %Var3% `n %Var18%
return
Ansonsten war es so gedacht wie haichen es beschrieben hat
Zum Account schicke ich eine PN an Dich Bobo.
Fehlertext ist im Anhang
- Attachments
-
- Fehler.JPG (5.3 KiB) Viewed 2455 times
Last edited by Optimus PrimeII on 02 Jun 2020, 07:42, edited 1 time in total.
-
- Posts: 5
- Joined: 02 Jun 2020, 03:27
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Hoppla. Kontakt über PN geht nicht
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Yep, Neuankömmlinge können genauso wenig PM's schreiben wie unantastbare Hyperlinks setzen.
Und was Haichen geschrieben hatte, hat BoBo doch vorher auch bereits beschrieben, und der screenshot der Fehlermeldung bestätigt dies auch noch, was ist also nun noch die Frage??
Lediglich eine einzige auswertbare (GUI)Variable, zwei gLabel (eins davon überflüssig, oder verwaist), und eine Variable in 'legacy schreibweise' anstatt im expession-style.
Habe erstmal fertig
Noch ein Tipp: wie bereits anderweitig angemerkt, Ctrl+c wenn die Fehlermeldung erscheint! Und dann einfach den text aus der Zwischenablage hierher kopieren, geht ohne umständlichen Upload eines vorab (ohne die Fehlermeldung!) zurechtgeschnippelten Screenshots!
Ist dann einfach so ...
---------------------------
Test.ahk
---------------------------
Error: Target label does not exist.
Specifically: gCheckBox x22 y289 w190 h30
Line#
---> 001: Gui,Add,CheckBox,gCheckBox x22 y289 w190 h30,Parameter1
002: Gui,Show,,FrunzShow
003: Return
004: Exit
005: Exit
005: Exit
The current thread will exit.
---------------------------
OK
---------------------------
Und was Haichen geschrieben hatte, hat BoBo doch vorher auch bereits beschrieben, und der screenshot der Fehlermeldung bestätigt dies auch noch, was ist also nun noch die Frage??
Lediglich eine einzige auswertbare (GUI)Variable, zwei gLabel (eins davon überflüssig, oder verwaist), und eine Variable in 'legacy schreibweise' anstatt im expession-style.
Habe erstmal fertig
Noch ein Tipp: wie bereits anderweitig angemerkt, Ctrl+c wenn die Fehlermeldung erscheint! Und dann einfach den text aus der Zwischenablage hierher kopieren, geht ohne umständlichen Upload eines vorab (ohne die Fehlermeldung!) zurechtgeschnippelten Screenshots!
Ist dann einfach so ...
---------------------------
Test.ahk
---------------------------
Error: Target label does not exist.
Specifically: gCheckBox x22 y289 w190 h30
Line#
---> 001: Gui,Add,CheckBox,gCheckBox x22 y289 w190 h30,Parameter1
002: Gui,Show,,FrunzShow
003: Return
004: Exit
005: Exit
005: Exit
The current thread will exit.
---------------------------
OK
---------------------------
Remember to use [code]CODE[/code]-tags for your multi-line scripts. Stay safe, stay inside, and remember washing your hands for 20 sec !
-
- Posts: 5
- Joined: 02 Jun 2020, 03:27
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Okay okay. Thema Fehlercode habe ich verstanden. Die Expression Schreibweise habe ich in allen nur erdenklichen Varianten ausprobiert. Letzter Stand ist hier:
Fehlerbild ist unverändert. Hinweise in der Dokumentation zu weiteren Lösungsversuchen sehe ich gerade 0. Geht das überhaupt?
@Bobo: Habe z.Z. viel Zeit zum Basteln. Coronabedingte Kündigung
Code: Select all
Gui, Show, x205 y106 h719 w663 , Test
Gui, Color, FFFFFF
Gui, Destroy
Gui, Font, S12
Gui, Add, Edit, x202 y209 w460 h30 r1 vEingabe,
Gui, Add, Button, x682 y209 w140 h30 gStart, Start
Gui, Add, Text, x202 y179 w460 h20 , Text hier eingeben
Gui, Add, CheckBox, gCheckbox x22 y289 w190 h30 , Parameter 1
Gui, Add, CheckBox, x22 y329 w190 h30 , Parameter 2
Gui, Add, CheckBox, x22 y369 w190 h30 , Parameter 3
Gui, Add, CheckBox, x22 y409 w190 h30 , Parameter 4
Gui, Add, CheckBox, x22 y449 w190 h30 , Parameter 5
Gui, Add, CheckBox, x22 y489 w190 h30 , Parameter 6
Gui, Add, Radio, x262 y289 w170 h30 , Parameter 7
Gui, Add, Radio, x262 y329 w170 h30 , Parameter 8
Gui, Add, Radio, x262 y369 w170 h30 , Parameter 9
Gui, Add, Radio, x262 y409 w170 h30 , Parameter 10
Gui, Add, Radio, x262 y449 w170 h30 , Parameter 11
Gui, Add, Radio, x262 y489 w170 h30 , Parameter 12
Gui, Add, DropDownList, r4 x472 y289 w190 h30 , Drucker 1|Drucker 2|Drucker 3
Gui, Add, DropDownList, r4 x472 y329 w190 h21 , 25`%|50`%|75`%|100`%
Gui, Add, DropDownList, r4 x472 y369 w190 h21 , Normalpapier|Papier glänzend|Altpapier|Pappe
Gui, Add, Edit, r1 x472 y409 w190 h30 ,
Gui, Add, Edit, r1 x472 y449 w190 h30 ,
Gui, Add, Edit, r1 x472 y489 w190 h30 ,
; Generated using SmartGUI Creator 4.0
Gui, Show, x127 y87 h706 w857, New GUI Window
Return
GuiClose:
ExitApp
Start:
Gui, Submit , NoHide ;https ahkde.github.io /docs/commands/Gui.htm#Submit Broken Link for safety
Var1 := SubStr(Eingabe, 11, 1) ;Für CB1
Var2 := SubStr(Eingabe, 12, 1)
Var3 := SubStr(Eingabe, 13, 1)
Var4 := SubStr(Eingabe, 14, 1)
Var5 := SubStr(Eingabe, 15, 1)
Var6 := SubStr(Eingabe, 16, 1)
Var7 := SubStr(Eingabe, 17, 1) ; Für Radio
Var8 := SubStr(Eingabe, 18, 1)
Var9 := SubStr(Eingabe, 19, 1)
Var10 := SubStr(Eingabe, 20, 1)
Var11 := SubStr(Eingabe, 21, 1)
Var12 := SubStr(Eingabe, 22, 1)
Var13 := SubStr(Eingabe, 23, 1) ; Für Listbox
Var14 := SubStr(Eingabe, 24, 1)
Var15 := SubStr(Eingabe, 25, 1)
Var16 := SubStr(Eingabe, 26, 5) ; Buchstaben
Var17 := SubStr(Eingabe, 31, 5) ; Zahlen
Var18 := SubStr(Eingabe, 36, 8) ; Text
VarA := 1
If (%Var1% != VarA) {
GuiControl, , Checkbox, 1
}else{
GuiControl, , Checkbox, 0
}
Sleep, 2000
MsgBox,Folgende Variablen kenne ich `n test1 %Var1% `ntest2 %Var2% `ntest3 %Var3% `n %Var18%
return
@Bobo: Habe z.Z. viel Zeit zum Basteln. Coronabedingte Kündigung
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Du weißt deine Supporter aber auch zu zermürben. Bis jetzt haben dir drei Helfer gesagt das du ein gLabel zu viel hast, die Fehlermeldung sagt dir das du ein Problem mit einem gLabel hast, sogar noch genauer: dessen Ziel existiert nicht!! Und was machst du, postest den selben fehlerhaften Code ein Drittes mal.
Stellt sich die Frage: wie sind deine Englischkenntnisse? Denn die Fehlermeldung ist schlicht eindeutig! Du solltest ernsthaft mal zwei Tage ein paar AHK-Grundlagen zur GUI (Variablen und gLabel), und zur Schreibweise von Ausdrücken/expressions wälzen, das würde helfen!
Stellt sich die Frage: wie sind deine Englischkenntnisse? Denn die Fehlermeldung ist schlicht eindeutig! Du solltest ernsthaft mal zwei Tage ein paar AHK-Grundlagen zur GUI (Variablen und gLabel), und zur Schreibweise von Ausdrücken/expressions wälzen, das würde helfen!
-
- Posts: 5
- Joined: 02 Jun 2020, 03:27
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Ich stimme dir zu, stehe aber nach wie vor auf dem Schlauch! gLabel, Variable, weder noch. Der Zusammenhang ist für mich nicht schlüssig und ich komme einfach nicht drauf.
Benötige ich eine Variable oder ein Label im Gui oder nichts von beiden?
Und wir sieht die If Formel aus? Wenn ich das Label weglasse, kann ich das Skript ausführen! Ziel soll es ja sein, dass die Checkbox gesetzt wird wenn die 11. Zahl im Edit eine 1 ist! Die Checkbox wird jedoch immer in allen Situationen gesetzt oder auch nicht gesetzt?
Nutze ich dann GuiControl oder Control zum steuern??
Anbei mein Code jetzt:
Ich klinke mich aus für heute. Das hat mir nun die Kraft geraubt
Benötige ich eine Variable oder ein Label im Gui oder nichts von beiden?
Und wir sieht die If Formel aus? Wenn ich das Label weglasse, kann ich das Skript ausführen! Ziel soll es ja sein, dass die Checkbox gesetzt wird wenn die 11. Zahl im Edit eine 1 ist! Die Checkbox wird jedoch immer in allen Situationen gesetzt oder auch nicht gesetzt?
Nutze ich dann GuiControl oder Control zum steuern??
Anbei mein Code jetzt:
Code: Select all
Gui, Show, x205 y106 h719 w663 , Test
Gui, Color, FFFFFF
Gui, Destroy
Gui, Font, S12
Gui, Add, Edit, x202 y209 w460 h30 r1 vEingabe,
Gui, Add, Button, x682 y209 w140 h30 gStart, Start
Gui, Add, Text, x202 y179 w460 h20 , Text hier eingeben
Gui, Add, CheckBox, vCheck x22 y289 w190 h30 , Parameter 1
Gui, Add, CheckBox, x22 y329 w190 h30 , Parameter 2
Gui, Add, CheckBox, x22 y369 w190 h30 , Parameter 3
Gui, Add, CheckBox, x22 y409 w190 h30 , Parameter 4
Gui, Add, CheckBox, x22 y449 w190 h30 , Parameter 5
Gui, Add, CheckBox, x22 y489 w190 h30 , Parameter 6
Gui, Add, Radio, x262 y289 w170 h30 , Parameter 7
Gui, Add, Radio, x262 y329 w170 h30 , Parameter 8
Gui, Add, Radio, x262 y369 w170 h30 , Parameter 9
Gui, Add, Radio, x262 y409 w170 h30 , Parameter 10
Gui, Add, Radio, x262 y449 w170 h30 , Parameter 11
Gui, Add, Radio, x262 y489 w170 h30 , Parameter 12
Gui, Add, DropDownList, r4 x472 y289 w190 h30 , Drucker 1|Drucker 2|Drucker 3
Gui, Add, DropDownList, r4 x472 y329 w190 h21 , 25`%|50`%|75`%|100`%
Gui, Add, DropDownList, r4 x472 y369 w190 h21 , Normalpapier|Papier glänzend|Altpapier|Pappe
Gui, Add, Edit, r1 x472 y409 w190 h30 ,
Gui, Add, Edit, r1 x472 y449 w190 h30 ,
Gui, Add, Edit, r1 x472 y489 w190 h30 ,
; Generated using SmartGUI Creator 4.0
Gui, Show, x127 y87 h706 w857, New GUI Window
Return
GuiClose:
ExitApp
Start:
Gui, Submit , NoHide ;https ahkde.github.io /docs/commands/Gui.htm#Submit Broken Link for safety
Var1 := SubStr(Eingabe, 11, 1) ;Für CB1
Var2 := SubStr(Eingabe, 12, 1)
Var3 := SubStr(Eingabe, 13, 1)
Var4 := SubStr(Eingabe, 14, 1)
Var5 := SubStr(Eingabe, 15, 1)
Var6 := SubStr(Eingabe, 16, 1)
Var7 := SubStr(Eingabe, 17, 1) ; Für Radio
Var8 := SubStr(Eingabe, 18, 1)
Var9 := SubStr(Eingabe, 19, 1)
Var10 := SubStr(Eingabe, 20, 1)
Var11 := SubStr(Eingabe, 21, 1)
Var12 := SubStr(Eingabe, 22, 1)
Var13 := SubStr(Eingabe, 23, 1) ; Für Listbox
Var14 := SubStr(Eingabe, 24, 1)
Var15 := SubStr(Eingabe, 25, 1)
Var16 := SubStr(Eingabe, 26, 5) ; Buchstaben
Var17 := SubStr(Eingabe, 31, 5) ; Zahlen
Var18 := SubStr(Eingabe, 36, 8) ; Text
VarA := 1
If (%Var1% != %VarA%)
{
Control, Check,, Check
}else
{
Control, Uncheck ,, Check
}
Sleep, 2000
MsgBox,Folgende Variablen kenne ich `n test1 %Var1% `ntest2 %Var2% `ntest3 %Var3% `n %Var18%
return
-
- Posts: 69
- Joined: 04 Feb 2020, 02:47
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
PS. Account geht wieder. Button an Tastatur defekt
Die reinste Form des Wahnsinns ist es, alles so zu belassen wie es ist und zu hoffen, dass sich etwas ändert [Albert Einstein]
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Ich versuch mal v und g im Gui zu erklären. Bitte nicht böse sein, wenn es zu einfach oder zu unverständlich sein sollte.
g<text> und v<text> werden so nur im GUI verwendet.
Sie kennzeichnen den <text> als Variable oder als adresse eines existierenden Labels.
g<text>: Du brauchst es, wenn etwas passieren soll sobald du mit dem GUI interagierst. Es wird automatisch ausgeführt, wenn du den Button drückst, die Checkbox/Radiobox anklickst oder etwas in ein Editfeld schreibst.
Dafür muß im GUI stehen welchen Code du ausführen willst. Ein Label namens <text> muß existieren.
v<text>: brauchst du, wenn das GuiControl irgendeine Inhalt hast, den du auswerten/verändern willst. Den Inhalt des Editfeldes zB.
Du brauchst es auch um das GUI aus dem Programm zu ändern. zB möchtest du in dem Edit/textfeld etwas anzeigen, was du im Programm erzeugt hast.
g<text> und v<text> werden so nur im GUI verwendet.
Sie kennzeichnen den <text> als Variable oder als adresse eines existierenden Labels.
g<text>: Du brauchst es, wenn etwas passieren soll sobald du mit dem GUI interagierst. Es wird automatisch ausgeführt, wenn du den Button drückst, die Checkbox/Radiobox anklickst oder etwas in ein Editfeld schreibst.
Dafür muß im GUI stehen welchen Code du ausführen willst. Ein Label namens <text> muß existieren.
Code: Select all
Gui, Add, Edit, w200 h100 gmachwasundzwarsofort,
Gui, Show, h706 w300 h200, label test
Return
machwasundzwarsofort:
tooltip, ich schreibe gerade etwas in das Editfeld.
return
Du brauchst es auch um das GUI aus dem Programm zu ändern. zB möchtest du in dem Edit/textfeld etwas anzeigen, was du im Programm erzeugt hast.
Code: Select all
Gui, Add, Edit, w200 h100 gmachwasundzwarsofort vInhaltdesEditfeldes,
Gui, Add, Button, gwegmittooltip, lösche Tooltip
Gui, Add, Button, gAddGreetings, Grüße
Gui, Show, ,label test
Return
machwasundzwarsofort:
Gui,submit, NoHide ;Inhalt einer GUIvariable (hier "InhaltdesEditfeldes") wird gebraucht.
tooltip, % "ich schreibe`n`n" InhaltdesEditfeldes "`n`nin das Editfeld"
return
wegmittooltip:
;Hier wird nichts aus dem GUI gebraucht, deshalb muß oben auch kein v<text> stehen
tooltip,
return
AddGreetings:
Gui,submit, NoHide ;Inhalt einer GUIvariable (hier "InhaltdesEditfeldes") wird gebraucht.
neu := "Moin Leute,`n" . InhaltdesEditfeldes . "`n`nEuer Optimus"
GuiControl,,InhaltdesEditfeldes, % neu ;der inhalt von neu wird das Guicontrol geschrieben, das die Variable InhaltdesEditfeldes enthält
return
Last edited by BoBo on 03 Jun 2020, 04:23, edited 1 time in total.
Reason: Entfernung von [c][/c]-tags welche innerhalb der Code-Box gesetzt wurden, obwohl dort wirkungslos.
Reason: Entfernung von [c][/c]-tags welche innerhalb der Code-Box gesetzt wurden, obwohl dort wirkungslos.
-
- Posts: 69
- Joined: 04 Feb 2020, 02:47
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Mahlzeit in die Runde,
danke für euren Support Bobo und haichen, die Informationen habe ich verstanden und werde sie auch weiter nutzen. Bei der aktuellen Anfrage hilft es allerdings nicht weiter.
Hintergund ist der, dass durch die Betätigung des Startbuttons die Variablen "gesetzt" werden und im Anschluss diese Variablen mit den Inhalten aus dem Edit überprüft werden sollen.
Wenn im Edit dann keine Zeichen oder Kauderwelsch stehen, bleibt die Checkbox "unchecked".
Steht im Edit z.B.: "111111111111111111111111111111111111111111111111" dann soll die Checkbox als checked gesetzt werden.
Mit dem aktuellen Skript kann ich das Gui starten, die Interaktion mit der Checkbox bleibt jedoch aus!
Wenn ich solche Kombinationen bisher umgesetzt habe habe ich die einzelnen Befehle untereinander aufgeführt.
Scheinbar geht das bei dieser Variante jedoch nicht.
Wenn ich das Thema mit dem gLabel nun also nach dem Motto "Hat sich stets bemüht - eine 4 ist auch bestanden" umgesetzt habe, stolpere ich scheinbar über eine weitere Baustelle
Die Checkbox bleibt bei mir immer "unchecked.
Was muss ich an dieser Stelle noch beachten?
Grüße
Update:
Goto und Gosub helfen an dieser Stelle auch nicht weiter
danke für euren Support Bobo und haichen, die Informationen habe ich verstanden und werde sie auch weiter nutzen. Bei der aktuellen Anfrage hilft es allerdings nicht weiter.
Hintergund ist der, dass durch die Betätigung des Startbuttons die Variablen "gesetzt" werden und im Anschluss diese Variablen mit den Inhalten aus dem Edit überprüft werden sollen.
Wenn im Edit dann keine Zeichen oder Kauderwelsch stehen, bleibt die Checkbox "unchecked".
Steht im Edit z.B.: "111111111111111111111111111111111111111111111111" dann soll die Checkbox als checked gesetzt werden.
Mit dem aktuellen Skript kann ich das Gui starten, die Interaktion mit der Checkbox bleibt jedoch aus!
Code: Select all
Gui, Show, x205 y106 h719 w663 , Test
Gui, Color, FFFFFF
Gui, Destroy
Gui, Font, S12
Gui, Add, Edit, x202 y209 w460 h30 r1 vEingabe,
Gui, Add, Button, x682 y209 w140 h30 gStart, Start
Gui, Add, Text, x202 y179 w460 h20 , Text hier eingeben
Gui, Add, CheckBox, gCheck1 x22 y289 w190 h30 , Parameter 1
Gui, Add, CheckBox, x22 y329 w190 h30 , Parameter 2
Gui, Add, CheckBox, x22 y369 w190 h30 , Parameter 3
Gui, Add, CheckBox, x22 y409 w190 h30 , Parameter 4
Gui, Add, CheckBox, x22 y449 w190 h30 , Parameter 5
Gui, Add, CheckBox, x22 y489 w190 h30 , Parameter 6
Gui, Add, Radio, x262 y289 w170 h30 , Parameter 7
Gui, Add, Radio, x262 y329 w170 h30 , Parameter 8
Gui, Add, Radio, x262 y369 w170 h30 , Parameter 9
Gui, Add, Radio, x262 y409 w170 h30 , Parameter 10
Gui, Add, Radio, x262 y449 w170 h30 , Parameter 11
Gui, Add, Radio, x262 y489 w170 h30 , Parameter 12
Gui, Add, DropDownList, r4 x472 y289 w190 h30 , Drucker 1|Drucker 2|Drucker 3
Gui, Add, DropDownList, r4 x472 y329 w190 h21 , 25`%|50`%|75`%|100`%
Gui, Add, DropDownList, r4 x472 y369 w190 h21 , Normalpapier|Papier glänzend|Altpapier|Pappe
Gui, Add, Edit, r1 x472 y409 w190 h30 ,
Gui, Add, Edit, r1 x472 y449 w190 h30 ,
Gui, Add, Edit, r1 x472 y489 w190 h30 ,
; Generated using SmartGUI Creator 4.0
Gui, Show, x127 y87 h706 w857, New GUI Window
Return
GuiClose:
ExitApp
Start:
Gui, Submit , NoHide ;https ahkde.github.io /docs/commands/Gui.htm#Submit Broken Link for safety
Var1 := SubStr(Eingabe, 11, 1) ;Für CB1
Var2 := SubStr(Eingabe, 12, 1)
Var3 := SubStr(Eingabe, 13, 1)
Var4 := SubStr(Eingabe, 14, 1)
Var5 := SubStr(Eingabe, 15, 1)
Var6 := SubStr(Eingabe, 16, 1)
Var7 := SubStr(Eingabe, 17, 1) ; Für Radio
Var8 := SubStr(Eingabe, 18, 1)
Var9 := SubStr(Eingabe, 19, 1)
Var10 := SubStr(Eingabe, 20, 1)
Var11 := SubStr(Eingabe, 21, 1)
Var12 := SubStr(Eingabe, 22, 1)
Var13 := SubStr(Eingabe, 23, 1) ; Für Listbox
Var14 := SubStr(Eingabe, 24, 1)
Var15 := SubStr(Eingabe, 25, 1)
Var16 := SubStr(Eingabe, 26, 5) ; Buchstaben
Var17 := SubStr(Eingabe, 31, 5) ; Zahlen
Var18 := SubStr(Eingabe, 36, 8) ; Text
sleep, 500
Check1:
If (%Var1% != 1)
{
GuiControl, ,Check1, 1
}else
{
GuiControl, ,Check1, 0
}
Sleep, 2000
MsgBox,Folgende Variablen kenne ich `n test1 %Var1% `ntest2 %Var2% `ntest3 %Var3% `n %Var18%
return
Scheinbar geht das bei dieser Variante jedoch nicht.
Wenn ich das Thema mit dem gLabel nun also nach dem Motto "Hat sich stets bemüht - eine 4 ist auch bestanden" umgesetzt habe, stolpere ich scheinbar über eine weitere Baustelle
Die Checkbox bleibt bei mir immer "unchecked.
Was muss ich an dieser Stelle noch beachten?
Grüße
Update:
Code: Select all
Gui, Show, x205 y106 h719 w663 , Test
Gui, Color, FFFFFF
Gui, Destroy
Gui, Font, S12
Gui, Add, Edit, x202 y209 w460 h30 r1 vEingabe,
Gui, Add, Button, x682 y209 w140 h30 gStart , Start
Gui, Add, Text, x202 y179 w460 h20 , Text hier eingeben
Gui, Add, CheckBox, gCheck1 x22 y289 w190 h30 , Parameter 1
Gui, Add, CheckBox, x22 y329 w190 h30 , Parameter 2
Gui, Add, CheckBox, x22 y369 w190 h30 , Parameter 3
Gui, Add, CheckBox, x22 y409 w190 h30 , Parameter 4
Gui, Add, CheckBox, x22 y449 w190 h30 , Parameter 5
Gui, Add, CheckBox, x22 y489 w190 h30 , Parameter 6
Gui, Add, Radio, x262 y289 w170 h30 , Parameter 7
Gui, Add, Radio, x262 y329 w170 h30 , Parameter 8
Gui, Add, Radio, x262 y369 w170 h30 , Parameter 9
Gui, Add, Radio, x262 y409 w170 h30 , Parameter 10
Gui, Add, Radio, x262 y449 w170 h30 , Parameter 11
Gui, Add, Radio, x262 y489 w170 h30 , Parameter 12
Gui, Add, DropDownList, r4 x472 y289 w190 h30 , Drucker 1|Drucker 2|Drucker 3
Gui, Add, DropDownList, r4 x472 y329 w190 h21 , 25`%|50`%|75`%|100`%
Gui, Add, DropDownList, r4 x472 y369 w190 h21 , Normalpapier|Papier glänzend|Altpapier|Pappe
Gui, Add, Edit, r1 x472 y409 w190 h30 ,
Gui, Add, Edit, r1 x472 y449 w190 h30 ,
Gui, Add, Edit, r1 x472 y489 w190 h30 ,
; Generated using SmartGUI Creator 4.0
Gui, Show, x127 y87 h706 w857, New GUI Window
Return
GuiClose:
ExitApp
Start:
Gui, Submit , NoHide ;https ahkde.github.io /docs/commands/Gui.htm#Submit Broken Link for safety
Var1 := SubStr(Eingabe, 11, 1) ;Für CB1
Var2 := SubStr(Eingabe, 12, 1)
Var3 := SubStr(Eingabe, 13, 1)
Var4 := SubStr(Eingabe, 14, 1)
Var5 := SubStr(Eingabe, 15, 1)
Var6 := SubStr(Eingabe, 16, 1)
Var7 := SubStr(Eingabe, 17, 1) ; Für Radio
Var8 := SubStr(Eingabe, 18, 1)
Var9 := SubStr(Eingabe, 19, 1)
Var10 := SubStr(Eingabe, 20, 1)
Var11 := SubStr(Eingabe, 21, 1)
Var12 := SubStr(Eingabe, 22, 1)
Var13 := SubStr(Eingabe, 23, 1) ; Für Listbox
Var14 := SubStr(Eingabe, 24, 1)
Var15 := SubStr(Eingabe, 25, 1)
Var16 := SubStr(Eingabe, 26, 5) ; Buchstaben
Var17 := SubStr(Eingabe, 31, 5) ; Zahlen
Var18 := SubStr(Eingabe, 36, 8) ; Text
sleep, 500
goto, Check1
return
Check1:
sleep, 500
If (%Var1% != 1)
{
GuiControl, ,Check1, 1
}
else
{
GuiControl, ,Check1, 0
}
Sleep, 2000
MsgBox,Folgende Variablen kenne ich `n test1 %Var1% `ntest2 %Var2% `ntest3 %Var3% `n %Var18%
return
Die reinste Form des Wahnsinns ist es, alles so zu belassen wie es ist und zu hoffen, dass sich etwas ändert [Albert Einstein]
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Sobald nachvollziehbar ist, das du dies verstanden hast: Variablen & Ausdrücke, kann es hier weiter gehen. Und belegen lässt sich das damit, indem du den Fehler in der Bedingung/condition selbst findest und beseitigst.
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Moin!
1. Kurze Antwort:
Worauf BoBo so nachdrücklich hinweist, ist das hier:
Die Klammern umschließen einen Ausdruck. In Ausdrücken werden Variablen normalerweise ohne umschließende %-Zeichen angesprochen:
Außerdem glaube ich, dass Du die Checkbox nur dann anwählen willst, wenn der Inhalt von Var1 = 1 ist:
Lies dazu den von BoBo verlinkten Bereich der Hilfe in Ruhe durch.
Ich melde mich nachher noch mal mit einer etwas längeren Antwort.
Bis dann!
1. Kurze Antwort:
Worauf BoBo so nachdrücklich hinweist, ist das hier:
Code: Select all
If (%Var1% != 1)
Code: Select all
If (Var1 != 1)
Code: Select all
If (Var1 = 1)
Ich melde mich nachher noch mal mit einer etwas längeren Antwort.
Bis dann!
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable Topic is solved
2. Längere Antwort:
AHK-Fenster bestehen in der Regel aus mehreren Teilen:
Das "Elternfenster" (Gui):
Es stellt den Rahmen samt Überschriftenzeile und ggf. das Fenstermenü bereit und umschließt eine Fläche (client area), auf der die weiteren Teile untergebracht werden können.
Ein oder mehrere "Kindfenster" (Control):
Das sind in der Regel vorgefertigte Steuerelemente, die von Windows mitgeliefert werden. Sie werden normalerweise innerhalb des Fensters positioniert.
Die vordefinierten Steuerelemente bringen sogenannte 'Fensterprozeduren' mit, die Ereignisse wie Benutzereingaben automatisch verarbeiten. Das ist einerseits sehr praktisch, weil sich das Skript darum nicht kümmern muss. Andererseits bekommt AHK von diesen Änderungen/Ereignissen aber erst einmal nichts mit. Um gezielt auf Ereignisse in einem Steuerelement zu lauschen, muss man diesen deshalb ein g-Label verpassen. Der Begriff steht für den Namen einer Subroutine, die bei bestimmten Ereignissen automatisch aufgerufen wird. fügt z.B. einem Fenster einen Button hinzu, bei dem automatisch eine vorhandene Routine Geklickt aufgerufen wird, wenn man auf den Button klickt oder ihn sonstwie 'drückt'.
Ein weiteres Problem besteht darin, den Steuerelementen zu jedem beliebigen Zeitpunkt den aktuellen Inhalt/Zustand zu entlocken bzw. ihn durch das Skript zu verändern. Es gibt mehrere Möglichkeiten, ein Steuerelement für die Anweisungen Gui, Submit, GuiControl bzw. GuiControlGet eindeutig zu identifizieren. Eine davon ist es, dem Steuerelement per v-Name einen Namen und gleichzeitig eine Ausgabevariable zu verpassen; die anderen sollte man meiner Meinung nach vermeiden. Wenn man das macht, empfiehlt es sich, möglichst "sprechende" Namen zu verwenden. Man spart sich damit manchmal bei der Fehlersuche ein ständiges Blättern im Skript.
Ich habe Dein Skript erst einmal mit v-Namen ausgestattet, damit Du die Steuerelemente gezielt verändern kannst. Vorhandene g-label habe ich bis auf das Label Start: entfernt. Dazu können wir bei Bedarf noch später kommen.Das Ganze ist absichtlich sehr 'schlicht' gehalten. Es lässt reichlich Raum für Optimierungen.
Von mehreren Radio-Buttons in einer Gruppe kann übrigens immer nur einer ausgewählt sein. Wenn Du mehreren Variablen für die Buttons eine 1 gibst, gewinnt immer die letzte.
AHK-Fenster bestehen in der Regel aus mehreren Teilen:
Das "Elternfenster" (Gui):
Es stellt den Rahmen samt Überschriftenzeile und ggf. das Fenstermenü bereit und umschließt eine Fläche (client area), auf der die weiteren Teile untergebracht werden können.
Ein oder mehrere "Kindfenster" (Control):
Das sind in der Regel vorgefertigte Steuerelemente, die von Windows mitgeliefert werden. Sie werden normalerweise innerhalb des Fensters positioniert.
Die vordefinierten Steuerelemente bringen sogenannte 'Fensterprozeduren' mit, die Ereignisse wie Benutzereingaben automatisch verarbeiten. Das ist einerseits sehr praktisch, weil sich das Skript darum nicht kümmern muss. Andererseits bekommt AHK von diesen Änderungen/Ereignissen aber erst einmal nichts mit. Um gezielt auf Ereignisse in einem Steuerelement zu lauschen, muss man diesen deshalb ein g-Label verpassen. Der Begriff steht für den Namen einer Subroutine, die bei bestimmten Ereignissen automatisch aufgerufen wird.
Code: Select all
Gui, Add, Button, w200 gGeklickt, Mein Button
Ein weiteres Problem besteht darin, den Steuerelementen zu jedem beliebigen Zeitpunkt den aktuellen Inhalt/Zustand zu entlocken bzw. ihn durch das Skript zu verändern. Es gibt mehrere Möglichkeiten, ein Steuerelement für die Anweisungen Gui, Submit, GuiControl bzw. GuiControlGet eindeutig zu identifizieren. Eine davon ist es, dem Steuerelement per v-Name einen Namen und gleichzeitig eine Ausgabevariable zu verpassen; die anderen sollte man meiner Meinung nach vermeiden. Wenn man das macht, empfiehlt es sich, möglichst "sprechende" Namen zu verwenden. Man spart sich damit manchmal bei der Fehlersuche ein ständiges Blättern im Skript.
Ich habe Dein Skript erst einmal mit v-Namen ausgestattet, damit Du die Steuerelemente gezielt verändern kannst. Vorhandene g-label habe ich bis auf das Label Start: entfernt. Dazu können wir bei Bedarf noch später kommen.
Code: Select all
#NoEnv
; Gui, Show, x205 y106 h719 w663 , Test
; Gui, Color, FFFFFF
; Gui, Destroy
Gui, Font, S12
Gui, Add, Edit, x202 y209 w460 h30 r1 vEingabe,
Gui, Add, Button, x682 y209 w140 h30 gStart , Start
Gui, Add, Text, x202 y179 w460 h20 , Text hier eingeben
Gui, Add, CheckBox, x22 y289 w190 h30 vCB1, Parameter 1
Gui, Add, CheckBox, x22 y329 w190 h30 vCB2, Parameter 2
Gui, Add, CheckBox, x22 y369 w190 h30 vCB3, Parameter 3
Gui, Add, CheckBox, x22 y409 w190 h30 vCB4, Parameter 4
Gui, Add, CheckBox, x22 y449 w190 h30 vCB5, Parameter 5
Gui, Add, CheckBox, x22 y489 w190 h30 vCB6, Parameter 6
Gui, Add, Radio, x262 y289 w170 h30 vRB1, Parameter 7
Gui, Add, Radio, x262 y329 w170 h30 vRB2, Parameter 8
Gui, Add, Radio, x262 y369 w170 h30 vRB3, Parameter 9
Gui, Add, Radio, x262 y409 w170 h30 vRB4, Parameter 10
Gui, Add, Radio, x262 y449 w170 h30 vRB5, Parameter 11
Gui, Add, Radio, x262 y489 w170 h30 vRB6, Parameter 12
Gui, Add, DropDownList, r4 x472 y289 w190 h30 vDDL1, Drucker 1|Drucker 2|Drucker 3
Gui, Add, DropDownList, r4 x472 y329 w190 h21 vDDL2, 25`%|50`%|75`%|100`%
Gui, Add, DropDownList, r4 x472 y369 w190 h21 vDDL3, Normalpapier|Papier glänzend|Altpapier|Pappe
Gui, Add, Edit, r1 x472 y409 w190 h30 vED1,
Gui, Add, Edit, r1 x472 y449 w190 h30 vED2,
Gui, Add, Edit, r1 x472 y489 w190 h30 vED3,
; Generated using SmartGUI Creator 4.0
Gui, Show, x127 y87 h706 w857, New GUI Window
Return
; --------------------------------------------------------------------------------------------------
GuiClose:
ExitApp
; --------------------------------------------------------------------------------------------------
Start:
Gui, Submit , NoHide ; https ahkde.github.io /docs/commands/Gui.htm#Submit Broken Link for safety
Var1 := SubStr(Eingabe, 11, 1) ; Für CB1
Var2 := SubStr(Eingabe, 12, 1)
Var3 := SubStr(Eingabe, 13, 1)
Var4 := SubStr(Eingabe, 14, 1)
Var5 := SubStr(Eingabe, 15, 1)
Var6 := SubStr(Eingabe, 16, 1)
Var7 := SubStr(Eingabe, 17, 1) ; Für Radio
Var8 := SubStr(Eingabe, 18, 1)
Var9 := SubStr(Eingabe, 19, 1)
Var10 := SubStr(Eingabe, 20, 1)
Var11 := SubStr(Eingabe, 21, 1)
Var12 := SubStr(Eingabe, 22, 1)
Var13 := SubStr(Eingabe, 23, 1) ; Für Listbox
Var14 := SubStr(Eingabe, 24, 1)
Var15 := SubStr(Eingabe, 25, 1)
Var16 := SubStr(Eingabe, 26, 5) ; Buchstaben
Var17 := SubStr(Eingabe, 31, 5) ; Zahlen
Var18 := SubStr(Eingabe, 36, 8) ; Text
; Beispiel für CB1
If (Var1 = 1)
GuiControl, , CB1, 1
Else
GuiControl, , CB1, 0
Return
Von mehreren Radio-Buttons in einer Gruppe kann übrigens immer nur einer ausgewählt sein. Wenn Du mehreren Variablen für die Buttons eine 1 gibst, gewinnt immer die letzte.
-
- Posts: 69
- Joined: 04 Feb 2020, 02:47
Re: Auswertung eines Strings und gezielte Nutzung definierter Inhalte als Variable
Hallo Zusammen, und vielen Dank für die Hinweise. Ich habe heute morgen auch endlich verstanden, dass Variablen in Ausdrücken ohne %-Zeichen angesprochen werden. Habe es dann z.T auch ohne gLabel zum einsatz bekommen. Vielen Dank an dieser Stelle für die Informationen und die von euch mitgebrachte Geduld. Die gute Nachricht bei diesem Topic ist jedoch für mich: Lerneffekt = riesig
Anbei meine erste funktionierende Umsetzung:
Ich werde die gLabel noch komplett einfügen, damit alles seine Ordnung hat
Vielen Dank an alle
Anbei meine erste funktionierende Umsetzung:
Code: Select all
Gui, Show, x205 y106 h719 w663 , Test
Gui, Color, FFFFFF
Gui, Destroy
Gui, Font, S12
Gui, Add, Edit, x202 y209 w460 h30 r1 vEingabe,
Gui, Add, Button, x682 y209 w140 h30 gStart , Start
Gui, Add, Text, x202 y179 w460 h20 , Text hier eingeben
Gui, Add, CheckBox, x22 y289 w190 h30 , Parameter 1
Gui, Add, CheckBox, x22 y329 w190 h30 , Parameter 2
Gui, Add, CheckBox, x22 y369 w190 h30 , Parameter 3
Gui, Add, CheckBox, x22 y409 w190 h30 , Parameter 4
Gui, Add, CheckBox, x22 y449 w190 h30 , Parameter 5
Gui, Add, CheckBox, x22 y489 w190 h30 , Parameter 6
Gui, Add, Radio, x262 y289 w170 h30 , Parameter 7
Gui, Add, Radio, x262 y329 w170 h30 , Parameter 8
Gui, Add, Radio, x262 y369 w170 h30 , Parameter 9
Gui, Add, Radio, x262 y409 w170 h30 , Parameter 10
Gui, Add, Radio, x262 y449 w170 h30 , Parameter 11
Gui, Add, Radio, x262 y489 w170 h30 , Parameter 12
Gui, Add, DropDownList, r4 x472 y289 w190 h30 vDDL1 , Drucker 1|Drucker 2|Drucker 3
Gui, Add, DropDownList, r4 x472 y329 w190 h21 vDDL2 , 25`%|50`%|75`%|100`%
Gui, Add, DropDownList, r4 x472 y369 w190 h21 vDDL3 , Normalpapier|Papier glänzend|Altpapier|Pappe
Gui, Add, Edit, r1 x472 y409 w190 h30 vEdit1,
Gui, Add, Edit, r1 x472 y449 w190 h30 vEdit2 ,
Gui, Add, Edit, r1 x472 y489 w190 h30 vEdit3 ,
; Generated using SmartGUI Creator 4.0
Gui, Show, x127 y87 h706 w857, New GUI Window
Return
GuiClose:
ExitApp
Start:
Gui, Submit , NoHide ;https ahkde.github.io /docs/commands/Gui.htm#Submit Broken Link for safety
Var1 := SubStr(Eingabe, 11, 1) ;Für CB1
Var2 := SubStr(Eingabe, 12, 1)
Var3 := SubStr(Eingabe, 13, 1)
Var4 := SubStr(Eingabe, 14, 1)
Var5 := SubStr(Eingabe, 15, 1)
Var6 := SubStr(Eingabe, 16, 1)
Var7 := SubStr(Eingabe, 17, 1) ; Für Radio
Var8 := SubStr(Eingabe, 18, 1)
Var9 := SubStr(Eingabe, 19, 1)
Var10 := SubStr(Eingabe, 20, 1)
Var11 := SubStr(Eingabe, 21, 1)
Var12 := SubStr(Eingabe, 22, 1)
Var13 := SubStr(Eingabe, 23, 1) ; Für Listbox
Var14 := SubStr(Eingabe, 24, 1)
Var15 := SubStr(Eingabe, 25, 1)
Var16 := SubStr(Eingabe, 26, 5) ; Buchstaben
Var17 := SubStr(Eingabe, 31, 5) ; Zahlen
Var18 := SubStr(Eingabe, 36, 10) ; Text
sleep, 500
Gui, Submit , NoHide
If (Var1 != 1)
{
GuiControl, ,Parameter 1, 0
}
else
{
GuiControl, ,Parameter 1, 1
}
Sleep, 200
return
Vielen Dank an alle
Die reinste Form des Wahnsinns ist es, alles so zu belassen wie es ist und zu hoffen, dass sich etwas ändert [Albert Einstein]