But the chalange is to trap any time the user presses the numlock, and put it
back on.


Przemyslaw Czerpak-2 wrote:
> 
> On Fri, 26 Sep 2008, Abeb wrote:
>> The trick is to trap the keypress of numlock ( or other control key)
> 
> And your received correct answer.
> 
> Sample code below. It uses two different methods to extract
> cotnrol key state. But please remember that not all GTs
> can support such functionality.
> 
> best regards,
> Przemek
> 
> 
> #include "inkey.ch"
> #include "hbgtinfo.ch"
> proc main()
>    local cStatus, iStatus, nKey
>    clear screen
>    while ( nKey := inkey( 0.1 ) ) != K_ESC
>       iStatus := hb_gtInfo( HB_GTI_KBDSHIFTS )
>       cStatus := ""
>       cStatus += iif( HB_BITAND( iStatus, HB_GTI_KBD_SHIFT ) != 0, ;
>                      "SHIFT ", "      " )
>       cStatus += iif( HB_BITAND( iStatus, HB_GTI_KBD_CTRL ) != 0, ;
>                      "CTRL ", "     " )
>       cStatus += iif( HB_BITAND( iStatus, HB_GTI_KBD_ALT ) != 0, ;
>                      "ALT ", "    " )
>       cStatus += iif( HB_BITAND( iStatus, HB_GTI_KBD_SCROLOCK ) != 0, ;
>                      "SCRLOCK ", "        " )
>       cStatus += iif( HB_BITAND( iStatus, HB_GTI_KBD_NUMLOCK ) != 0, ;
>                      "NUMLOCK ", "        " )
>       cStatus += iif( HB_BITAND( iStatus, HB_GTI_KBD_CAPSLOCK ) != 0, ;
>                      "CAPSLOCK ", "         " )
>       cStatus += iif( HB_BITAND( iStatus, HB_GTI_KBD_INSERT ) != 0, ;
>                      "INSERT ", "       " )
>       @ 1, 0 say cStatus
> 
>       cStatus := ""
>       cStatus += iif( KSETINS(), "INS ", "    " )
>       cStatus += iif( KSETCAPS(), "CAPS ", "     " )
>       cStatus += iif( KSETNUM(), "NUM ", "    " )
>       cStatus += iif( KSETSCROLL(), "SCROLL ", "       " )
>       @ 2, 0 say cStatus
>       if nKey==asc("C") .or. nKey==asc("c")
>          KSETCAPS(!KSETCAPS())
>       elseif nKey==asc("I") .or. nKey==asc("i")
>          KSETINS(!KSETINS())
>       elseif nKey==asc("N") .or. nKey==asc("n")
>          KSETNUM(!KSETNUM())
>       elseif nKey==asc("S") .or. nKey==asc("s")
>          KSETSCROLL(!KSETSCROLL())
>       endif
>    enddo
> return
> _______________________________________________
> Harbour mailing list
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 
> 

-- 
View this message in context: 
http://www.nabble.com/how-to-force-Num-Lock-on---gtwvt-tp19691006p19713171.html
Sent from the Harbour - Dev mailing list archive at Nabble.com.

_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to