Delen via


Een toetsenbordinterface maken voor standaard schuifbalken

Hoewel een schuifbalkbesturingselement een ingebouwde toetsenbordinterface biedt, doet een standaard schuifbalk dat niet. Als u een toetsenbordinterface voor een standaard schuifbalk wilt implementeren, moet een vensterprocedure het WM_KEYDOWN bericht verwerken en de code van de virtuele sleutel onderzoeken die is opgegeven door de parameter wParam. Als de code van de virtuele sleutel overeenkomt met een pijltoets, verzendt de vensterprocedure zichzelf een WM_HSCROLL- of WM_VSCROLL bericht met het woord in lage volgorde van de parameter wParam ingesteld op de juiste schuifbalkaanvraagcode.

Wanneer de gebruiker bijvoorbeeld op de pijl-omhoog drukt, ontvangt de vensterprocedure een WM_KEYDOWN bericht met wParam gelijk aan VK_UP. Als reactie stuurt de vensterprocedure zichzelf een WM_VSCROLL bericht met het woord in lage volgorde van wParam- ingesteld op de SB_LINEUP aanvraagcode.

Wat u moet weten

Technologieën

Voorwaarden

  • C/C++
  • Programmeren van Windows-gebruikersinterface

Aanwijzingen

Een toetsenbordinterface maken voor een standaard schuifbalk

In het volgende codevoorbeeld ziet u hoe u een toetsenbordinterface voor een standaard schuifbalk opneemt.

    case WM_KEYDOWN: 
    {
        WORD wScrollNotify = 0xFFFF;

        switch (wParam) 
        { 
            case VK_UP: 
                wScrollNotify = SB_LINEUP; 
                break; 
 
            case VK_PRIOR: 
                wScrollNotify = SB_PAGEUP; 
                break; 
 
            case VK_NEXT: 
                wScrollNotify = SB_PAGEDOWN; 
                break; 
 
            case VK_DOWN: 
                wScrollNotify = SB_LINEDOWN; 
                break; 
 
            case VK_HOME: 
                wScrollNotify = SB_TOP; 
                break; 
 
            case VK_END: 
                wScrollNotify = SB_BOTTOM; 
                break; 
        } 
 
        if (wScrollNotify != -1) 
            SendMessage(hwnd, WM_VSCROLL, MAKELONG(wScrollNotify, 0), 0L); 
 
        break; 
    }

Schuifbalken gebruiken

demo van algemene besturingselementen van Windows (CppWindowsCommonControls)