Last Updated 2003/06/10
Programming Tips Visual C++ API  索 引 
NumLockやCapsLockの制御
2003/06/10

CapsLock を強制的に ON にする関数は以下のとおり.
2回呼び出すと OFF になる.

void OnOffCapsLock(void)
{
    BYTE            byKeyState[256];
    static BYTE     byLockSave;
    static BOOL     fLock = FALSE;

    GetKeyboardState(byKeyState);
    if( !fLock ) {
        byLockSave = byKeyState[VK_CAPITAL];
        byKeyState[VK_CAPITAL] |= 0x01;
        fLock = TRUE;
    } else {
        byKeyState[VK_CAPITAL] = byLockSave;
        fLock= FALSE;
    }
    SetKeyboardState(byKeyState);
}

VK_CAPITAL を VK_NUMLOCK にすれば NumLock の制御が行える.


参照
前後のTips
NumLockやCapsLockの制御

DSS ProgrammingTipsCGI Ver2.01