[esc] in a textfield
BlitzPlus Forums/BlitzPlus Programming/[esc] in a textfield
| ||
How do I read out an [esc] press while typing in a textfield ? :)
a$=RequestString$(256,256,80,24,"Blah!")
Notify a$
End
Function RequestString$(x,y,width,height,def$="")
FlushEvents()
FlushKeys()
w=CreateWindow("",x,y,width,height,0,0)
txt=CreateTextField(1,1,width-2,height-2,w)
SetGadgetText txt,def$
ActivateGadget txt
Repeat
WaitEvent()
If EventID()=$803
If EventSource()=w quit=True
EndIf
If EventSource()=txt
If EventID()=$401
If EventData()=13 ; enter
quit=True
returnstring$=TextFieldText(txt)
EndIf
If EventData()=27 ; esc
End ; <-debug
quit=True
returnstring$=def$
EndIf
EndIf
EndIf
Until quit
FreeGadget w
Return returnstring$
End Function
|
| ||
Parent = CreateWindow("Escape", ClientWidth(Desktop())/2-90, ClientHeight(Desktop())/2-42, 180, 133, 0, 1)
Text1 = CreateTextField(5, 5, 163, 20, Parent, 0)
ActivateGadget Text1
in_Text = 1
HotKeyEvent 1, 0, $101, 15, 0, 0, 0, 0
Repeat
Select WaitEvent()
Case $803
End
Case $101
Select EventData()
Case 15
Notify "You pressed escape"
End Select
.StepOut
End Select
Forever
|
| ||
| Hey nice one Eikon, I was just trying to work out how to do that. |
| ||
| Thanks h2so4. Study up on the HotKeyEvent, its very useful for things like this and tabbing between controls. |