NumLock - programno upravlenie pod MFC ili API ?

9 отговора 230 прегледа
#1

NumLock - programno upravlenie pod MFC ili API ?

Kak moga da puskam/izkluchvam NumLock-a programno ?
Pulno e s kontroli za celta , no mi tryabva kod ?

Отговор
в отговор на FullScream #2

Re: NumLock - programno upravlenie pod MFC ili API ?

Това работи
#include <windows.h>

void SetNumLock( BOOL bState )
{
BYTE keyState[256];

GetKeyboardState((LPBYTE)&keyState);
if( (bState && !(keyState[VK_NUMLOCK] & 1)) ||
(!bState && (keyState[VK_NUMLOCK] & 1)) )
{
// Simulate a key press
keybd_event( VK_NUMLOCK,
0x45,
KEYEVENTF_EXTENDEDKEY | 0,
0 );

// Simulate a key release
keybd_event( VK_NUMLOCK,
0x45,
KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,
0);
}
}

void main()
{
SetNumLock( TRUE );
}

Отговор
в отговор на Гeoprи #3

Re: NumLock - programno upravlenie pod MFC ili API ?

Mnogo 10x :)

Отговор
в отговор на FullScream #4

Re: NumLock - programno upravlenie pod MFC ili API ?

Kompilira se bez yadove, no ...ne raboti :)

produljavam borbata :)

Отговор
в отговор на FullScream #5

Re: NumLock - programno upravlenie pod MFC ili API ?

Nehsto i az si mislq 4e tochno s Num lock praveshe problem. Ne znam zashto..

Q probvai:
var
myKeys : TKeyboardState;
begin
GetKeyboardState(myKeys);
myKeys[VK_Numlock] := 1;
SetKeyboardState(myKeys);
end;
Bi trqbvalo lesno da si go prevedesh

by Wise Guy
[email protected]
Отговор
в отговор на FullScream #6

Re: NumLock - programno upravlenie pod MFC ili API ?

Под Win2000 + SP2(както е при мен работи).

Отговор
в отговор на WiseGuy #7

Re: NumLock - programno upravlenie pod MFC ili API ?

ot Pascal mi izlizat pupki na strahsmni mesta , sarbi me , poduvam se i poluchavam hulcane ... no vse pak shte opitam taka :)))

Отговор
в отговор на Georgi #8

Tested

Sq gi probvah dvete. Ne znam zashto keybd_event ne ba4kashe. S drugite Lock-ove e OK.

Vuv vseki sluchai SetKeyboardState raboti vinagi

Li4no az oba4e predpochitam da izpolzvam obiknovenno keybd_event kato natiskam kop4eta

by Wise Guy
[email protected]
Отговор
в отговор на WiseGuy #9

Stranno

Kazvash che SetKeyboardState raboti i upravlyava NumLock-a , a v MSDN pishe :

Because the SetKeyboardState function alters the input state of the calling thread and not the global input state of the system, an application cannot use SetKeyboardState to set the num lock, caps lock, or scroll lock indicator lights on the keyboard.

Zega si preodolyavam murzela i shte go probvam .

Отговор