Hallo,
bei folgendem Problem würde ich gerne Eure Hilfe in Anspruch nehmen:
Ich habe eine Gui, in der ich eine Dropdownlist habe. In dem Beispiel unten kann man drei Farben auswählen. Diese werden dann später ausgegeben.
Zwei Anliegen habe ich:
1. Die Dropdownlist soll zusätzlich eine Eingabe erlauben. Bisher kann ich nur die Farben auswählen, die in dem Skript drin sind. Ich möchte aber die Möglichkeit haben, auch eine Farbe reinzuschreiben, die ich nicht auswählen kann.
2. Genial wäre es, wenn ich die Farben aus einer Text-Datei auslesen könnte und dass, wenn ich eine neue Farbe eingebe, die noch nicht in der Textdatei vorhanden ist, diese hinzugefügt wird.
Hier das Skript, wie ich bisher gemacht habe:
Gui, Add, Text,, Farbe:
Gui, Add, DropDownList, vFarbe Choose3, blau|grün|rot|
send, %Farbe%
ExitApp
--------------------------
Vielen Dank schon mal im voraus für Eure Ideen.
Liebe Grüße,
Alexander
Dropdownlist Topic is solved
Moderator: jNizM
Re: Dropdownlist Topic is solved
Moin,
eine 'DropDownList', die auch Eingaben erlaubt, heißt ComboBox.
Für das Einlesen einer Datei gibt es die Anweisung FileRead oder die Schleife Loop, Read. Für das Anhängen an eine bestehende Datei bzw. das Ertellen einer neuen Datei die Anweisung FileAppend. Man kann das auch mit dem deutlich leitungsfähigeren File-Objekt lösen (siehe auch FileOpen).
eine 'DropDownList', die auch Eingaben erlaubt, heißt ComboBox.
Für das Einlesen einer Datei gibt es die Anweisung FileRead oder die Schleife Loop, Read. Für das Anhängen an eine bestehende Datei bzw. das Ertellen einer neuen Datei die Anweisung FileAppend. Man kann das auch mit dem deutlich leitungsfähigeren File-Objekt lösen (siehe auch FileOpen).
Re: Dropdownlist
Hallo,
vielen Dank für die Antwort,
Ich bin erst jetzt dazu gekommen, mich damit zu beschäftigen. Die ComboBox ist inzwischen eingebaut und funktioniert prima, wenn ich die auszuwählenden Daten direkt in dem Skript eingebe:
Mein Anliegen ist es nun, dass die Daten in der ComboBox aus einer ini-Datei ausgelesen werden, was mir nur fehlerhaft gelingt. Die Farben werden zwar angezeigt, aber die ComboBox funktioniert nicht mehr richtig. Die Daten werden nicht mehr alphabetisch sortiert und wenn ich "r" eingebe, wird nicht rot in die erste Zeile gesetzt. Hier ist der Code:
Meine Farben.ini sieht folgendermaßen aus
Für Lösungsvorschläge wäre ich sehr dankbar!
Viele Grüße.
vielen Dank für die Antwort,
Ich bin erst jetzt dazu gekommen, mich damit zu beschäftigen. Die ComboBox ist inzwischen eingebaut und funktioniert prima, wenn ich die auszuwählenden Daten direkt in dem Skript eingebe:
Code: Select all
Gui, Add, ComboBox, simple x175 y150 choose1 Sort vOption, |rot|grün|gelb|blau|
Code: Select all
Iniread OutputVarSectionNames, Farben.ini
Gui, Add, ComboBox, simple x175 y150 choose1 Sort vOption, ||
- [rot|]
rot|=rot|
[grün|]
grün|=grün|
[gelb|]
gelb|=gelb|
[blau|]
blau|=blau|
Code: Select all
rot|grün|gelb|blau|
Viele Grüße.
Re: Dropdownlist
Mir ist ein Fehler unterlaufen, so sieht der Code aus, der nicht ganz funktioniert:
Code: Select all
Iniread OutputVarSectionNames, Farben.ini
Gui, Add, ComboBox, simple x175 y150 choose1 Sort vOption, |%OutputVarSectionNames%|
Re: Dropdownlist
Aha,
ich bin etwas weitergekommen.
OutputVarSectionNames sorgt dafür, dass ein Leerzeichen zwischen den Farben ist:
ich bin etwas weitergekommen.
Code: Select all
Iniread OutputVarSectionNames
- rot| grün| gelb| blau|
Re: Dropdownlist
Moin,
ich glaube nicht, dass Deine Sectionliste Leerzeichen enthält. Die Namen der einzelnen Sections sind allerdings durch einen Zeilenvorschub `n voneinander getrennt (siehe IniRead).
Ich schlage deshalb vor, die senkrechten Striche | einfach zu entfernen:Du kannst dann nach dem Einlesen die Zeilenvorschübe durch senkrechte Striche ersetzen:
ich glaube nicht, dass Deine Sectionliste Leerzeichen enthält. Die Namen der einzelnen Sections sind allerdings durch einen Zeilenvorschub `n voneinander getrennt (siehe IniRead).
Ich schlage deshalb vor, die senkrechten Striche | einfach zu entfernen:
Code: Select all
[rot]
...
[grün]
...
[gelb]
...
[blau]
...
Code: Select all
StringReplace, OutputVarSectionNames, OutputVarSectionNames, `n, |, All
; oder
OutputVarSectionNames := StrReplace(OutputVarSectionNames, "`n", "|")
Re: Dropdownlist
Hey, vielen Dank. Genau das war das Problem!
Jetzt läuft es wie geschmiert.
Vielen Dank für Deine Hilfe!
Jetzt läuft es wie geschmiert.
Vielen Dank für Deine Hilfe!
Who is online
Users browsing this forum: No registered users and 61 guests