Schleife um einen TextFieldText auszuwerten ???
Übersicht

x_toBetreff: Schleife um einen TextFieldText auszuwerten ??? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
dieser code ist schon in einem EventHandler:
Code: [AUSKLAPPEN] Select WaitEvent() Case $401 Select EventSource() Case txt_lvlwidth lvl_width = Int(TextFieldText(txt_lvlwidth))*tile_width fn_drwmap() End Select End Select txt_lvlwidth ist ein Textfield und dem user soll die möglichkeit gegeben werde eine reele zahl einzugeben. mit einstelligen ziffern klappt es ja...das problem ist, daß hinter einem tastendruck gleich die funktion fn_drwmap() ausgeführt wird. wie kann ich das problem lösen, daß das field erst ausgewertet wird, wenn die eingabe beendet ist ? am liebsten wäre mir per Enter/Return taste oder noch besser, wenn das Field nicht mehr aktiv ist. ich habe zwar schon an EventData() gedacht, aber komme ich irgendwie nicht klar.. ![]() |
||
![]() |
das wurgel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit diesem Befehl kannst du ein HotKeyEvent für die Enter-Taste machen:
HotKeyEvent |
||
1 ist ungefähr 3 |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
Oder einen Button (CreateButton![]() oder eine timervariable die bei jedem Tastendruck auf Millisecs()+1000 (eine sekunde wartezeit) gesetzt wird und so das feld erst eine Sekunde nach dem letzten Tastendruck analysiert [Dann aber Waittimer n timeout von min. einer sekunde geben.] |
||
![]() |
Midimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
würde nicht das BlitzHilfe-Beispiel genau das für Dich leisten?
Code: [AUSKLAPPEN] Repeat
If GetKey() = 27 Then End If WaitEvent() = $401 And EventSource() = textfield Then If EventData() = 13 Then Notify TextFieldText(textfield) End EndIf EndIf Forever |
||
![]() |
blackgecko |
![]() Antworten mit Zitat ![]() |
---|---|---|
Aber nicht mehr in späteren Versionen, da reagieren Textfields nämlich nicht mehr auf Enter. Dann muss man es so machen, wie Silver_Knee sagt, ein Button mit Style 4. | ||
So long and thanks for all the fish.
Fedora 17 | Windows 7 || BlitzPlus | BlitzMax Rechtschreibflame GO!!! Deppenapostroph | SeidSeit | Deppenakzent | DassDas | Deppenleerzeichen | TodTot | enzigste.info - Ja, ich sammel die. |
x_to |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hmmm...alles gute ratschläge aber ich dachte an eine schleife die vor dem funktionsaufruf läuft um das textfield auszuwerten.... | ||
![]() |
das wurgel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Falls du mit auswerten
Code: [AUSKLAPPEN] lvl_width = Int(TextFieldText(txt_lvlwidth))*tile_width
meinst, das kannst dann dort hin schreiben, wo das Drücken des Buttons mit Style 4 überprüft wird. Wenn du willst, dass man nur Zahlen eingeben kann, musst du nur bei jeder Eingabe alle Buchstaben des Texfelds durchgehen, die darin vorkommenden Zahlen zu einer Stringvariable hinzufügen und diesen dann per SetGadgetText wieder ins Textfeld schreiben. |
||
1 ist ungefähr 3 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group