After exploring it a bit this works fine for me (3 textfields). Hope it helps someone else! It seems that 2 events are posted on an Enter key (that's what it looks like to me anyway). Tabs AND Enters through fine.
' TABBING or RETURNING THROUGH TEXTFIELDS WITHOUT A BOUNCE from the 2nd text field.
' Note: no OK button needed.
Strict
Import MaxGui.Drivers
Global window:Tgadget=CreateWindow("Window",0,0,320,200)
Global g:Tgadget=CreateTextField(10,10,30,25,window)
Global g1:Tgadget=CreateTextField(10,50,30,25,window)
Global g2:Tgadget=CreateTextField(10,80,30,25,window)
ActivateGadget g
While WaitEvent()
Print CurrentEvent.ToString()
Select EventID()
Case EVENT_GADGETLOSTFOCUS
Select EventSource()
Case g
ActivateGadget g1 ; WaitEvent ; ActivateGadget g1 ' -> Enter seems to produce 2 events! This clears the 2nd.
Case g1
ActivateGadget g2 ; WaitEvent ; ActivateGadget g2
Case g2 Exit
End Select
Case EVENT_WINDOWCLOSE End
End Select
Wend
Print "g="+TextFieldText$(g)
Print "g1="+TextFieldText$(g1)
Print "g2="+TextFieldText$(g2)