ich habe ein Problem eine Variable neu zu definieren, welche den Namen im Array vordefiniert hat.
Situation (Aufgabenstellung)
Ich habe ein Fenster mit Feldern und gefüllten Edit-Feldern. Diese Felder kann ich nicht direkt ansprechen und muss sie daher "durchtaben".
Das Feld soll dazu abgefragt werden, ob "es Wert ist auszulesen", dann in das Edit-Feld daneben springen und den Inhalt in die passende Variable schreiben.
Funktionsweise
- Ich "tabbe" mich zum 1. Feld
- speichere den Inhalt in die Zwischenablage
- schaue, ob diese im Array ist und wenn ja, welche Position
- in einem 2. Array steht an passender stelle der Name der Variable, in der ein Wert geschrieben werden soll
- danach geht das Ganze im Loop von vorne los
Code: Select all
^q::
GetDk_Benennung := "Wert wurde nicht ersetzt"
arrAlibre := {"01 - Titel:": 1, "03 - Erstellt von:": 2}
arrInsert := [GetDk_Benennung, var2]
varCount := 1
varCountBack := varCount*2
ClipWaitTime := 0.1
Send {Tab 3} ; 01-Benennung
Loop, %varCount%{
clipboard = ; Leert die Zwischenablage
Send ^c ; Kopiert den Aktuellen Inhalt
ClipWait, ClipWaitTime ; Wartet bis Zwischenablage einen Text enthält
varFound := clipboard ; sendet Inhalt aus Zwischenablage an Variable
varFoundNum := arrAlibre[varFound] ; ermittelt die Pos. im Array und setzt sie in eine Variable
if (varFoundNum > 0){ ; Wenn der Wert größer 0 ist ...
Send, {Tab} ; Sende Tab
clipboard = ; Zwischenablage leeren
Send ^c ; kopiere Inhalt in Zwischenablage
ClipWait, ClipWaitTime ; Wartet kurz
arrInsert[varFoundNum] = clipboard ; soll die Variable ausdem Array nehmen, sodass diese den Wert aus der Zwischenablage bekommt.
; Send, {Tab} ; Sendet erneut Tab
}
else{ ; Wenn der Gesuchte wert nich größer 0 ...
Send, {Tab 2} ; überspringe das Feld um zur nächsten Abfrage zu gelangen
}
}
MsgBox, %GetDk_Benennung% ; dient zur Abfrage, ob die Variable ersetzt wurde.
return
Ich bitte um Verbesserung und vielleicht eine kurze Erklärung
Ihr könnt mir mit Sicherheit schnell helfen.
Freundliche Grüße
Alex