Logg på med Microsoft
Logg på, eller opprett en konto.
Hei,
Velg en annen konto.
Du har flere kontoer
Velg kontoen du vil logge på med.

Sammendrag

Dokumentasjonen for SetKeyboardState() på riktig måte, sier at du ikke kan bruke denne APIen til å veksle mellom tastene NUM LOCK, CAPS LOCK og SCROLL LOCK.


Du kan bruke keybd_event() til å veksle mellom NUM LOCK, CAPS LOCK og SCROLL LOCK nøklene under Windows NT. Den samme teknikken fungerer for aktivering av CAPS LOCK og SCROLL LOCK under Windows 95, men det fungerer ikke for NUM LOCK.

Hvis du vil ha mer informasjon

Følgende eksempel programmet aktiverer NUM LOCK-lampen hvis den er slått av. SetNumLock-funksjon som er definert her simulerer trykke NUM LOCK-tasten ved hjelp av keybd_event() med en virtuell nøkkel for VK_NUMLOCK. Det tar en boolsk verdi som angir om lyset bør være deaktivert (USANN) eller på (TRUE).


Den samme teknikken kan brukes for CAPS LOCK-tasten (VK_CAPITAL) og SCROLL LOCK-tasten (VK_SCROLL).

Eksempelkode

   /* Compile options needed:
*/

#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 );
}

Trenger du mer hjelp?

Vil du ha flere alternativer?

Utforsk abonnementsfordeler, bla gjennom opplæringskurs, finn ut hvordan du sikrer enheten og mer.

Fellesskap hjelper deg med å stille og svare på spørsmål, gi tilbakemelding og høre fra eksperter med stor kunnskap.

Var denne informasjonen nyttig?

Hvor fornøyd er du med språkkvaliteten?
Hva påvirket opplevelsen din?
Når du trykker på Send inn, blir tilbakemeldingen brukt til å forbedre Microsoft-produkter og -tjenester. IT-administratoren kan samle inn disse dataene. Personvernerklæring.

Takk for tilbakemeldingen!

×