FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour xbrowse : Keydown()
Posts: 167
Joined: Thu Mar 22, 2007 11:24 AM
xbrowse : Keydown()
Posted: Mon Jun 18, 2007 09:43 AM
Hello,

In mine aplication , i have :

oBrw:bkeyDown := {||....}

So , i try to trigger an action for nkey 32 or 13

The problem is that in method keydown , this action is executed twice :

METHOD KeyDown( nKey, nFlags ) CLASS TXBrowse

   if ::bKeyDown != nil
      Eval( ::bKeyDown, nKey, nFlags )
   endif   

   do case
   case nKey == VK_UP // and other keys
       .......
   otherwise
        return Super:KeyDown( nKey, nFlags )
   endcase

return 0


Super:Keydown() executes also ::bKeydown

I had to change it

if ::bKeyDown = nil
return Super:KeyDown( nKey, nFlags )
end

Am i missing something ?

Frank
Posts: 167
Joined: Thu Mar 22, 2007 11:24 AM
xbrowse : Keydown()
Posted: Mon Jun 18, 2007 10:33 AM

I am sorry , but i saw :

  • Fix: Class TXBrowse Method KeyDown() was evaluating bKeyDown twice. Now it is ok.

How is the method changed ?

Frank

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
xbrowse : Keydown()
Posted: Mon Jun 18, 2007 11:04 AM
Frank,

Please remove these three lines:
   if ::bKeyDown != nil 
      Eval( ::bKeyDown, nKey, nFlags ) 
   endif
regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion