bKeyDown-RETURN is not processed, another event may be used?

Post Reply
xVar
Posts: 35
Joined: Mon Jan 19, 2009 9:14 am

bKeyDown-RETURN is not processed, another event may be used?

Post by xVar »

Hi!

I try write code for event when RETURN key is pressed on window ( window have not any input elements ) .
In bKeyDown events every key is processed , but RETURN is not.


What event block may be used for this?

Reagards
Andrej


It is my code:


function Main()
LOCAL cSearch:=""

DEFINE WINDOW oWnd TITLE "KEYTEST"
@ 1,1 SAY oSay PROMPT cSearch SIZE 80, 30


oWnd:bKeyChar = { | nKey | Search( nKey, @cSearch ),;
oSay:Refresh() }

oWnd:bKeyDown = { | nKey | Search( nKey, @cSearch ),;
oSay:Refresh() }

ACTIVATE WINDOW oWnd
return nil


function Search( nKey, cSearch )

if nKey == 8
cSearch := SubStr( cSearch, 1, Len( cSearch ) - 1 )
elseif nKey==27
cSearch :=""
else
cSearch += Upper( Chr( nKey ) )
endif
MsgInfo(str(nKey))

return nil
User avatar
Enrico Maria Giordano
Posts: 7355
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia
Contact:

Re: bKeyDown-RETURN is not processed, another event may be used?

Post by Enrico Maria Giordano »

You can use the VALID clause or bLostFocus codeblock instead, and eventually test the pressed key using GetKeyState().

EMG
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: bKeyDown-RETURN is not processed, another event may be used?

Post by Antonio Linares »

Andrej,

As you have created a child control, then those events get routed to that child control.

If you comment out this line:

// @ 1,1 SAY oSay PROMPT cSearch SIZE 80, 30

then the main window should properly process those events.

You can use oWnd:Say( nRow, nCol, cText, ... ) to paint on the window instead of using a SAY control there.
regards, saludos

Antonio Linares
www.fivetechsoft.com
xVar
Posts: 35
Joined: Mon Jan 19, 2009 9:14 am

Re: bKeyDown-RETURN is not processed, another event may be used?

Post by xVar »

Thanks!
I will try this.
Andrey
Post Reply