Sdílet prostřednictvím


Použití událostí klávesnice

Většina programů Windows Forms zpracovává zadávání klávesnice pomocí zpracování událostí klávesnice. Toto téma obsahuje přehled událostí klávesnice, včetně podrobností o tom, kdy použít každou událost a data zadaná pro každou událost. Viz také Přehled obslužných rutin událostí (Windows Forms) a Přehled událostí (Windows Forms).

Události klávesnice

Windows Forms poskytuje dvě události, ke kterým dochází, když uživatel stiskne klávesovou klávesu a jednu událost, když uživatel uvolní klávesu klávesnice:

  • Událost KeyDown nastane jednou.

  • Událost KeyPress, ke které může dojít vícekrát, když uživatel drží stejný klíč.

  • Událost KeyUp nastane jednou, když uživatel uvolní klíč.

Když uživatel stiskne klávesu, Windows Forms určí, která událost se má vyvolat, na základě toho, jestli zpráva klávesnice určuje znakovou klávesu nebo fyzickou klávesu. Další informace o znakových a fyzických klávesách naleznete v tématu Jak funguje vstup klávesnice.

Následující tabulka popisuje tři události klávesnice.

Událost klávesnice Popis Výsledky
KeyDown Tato událost se vyvolá, když uživatel stiskne fyzickou klávesu. Obsluha pro KeyDown přijímá:

  • Parametr KeyEventArgs, který poskytuje vlastnost KeyCode (která určuje tlačítko fyzické klávesnice).
  • Vlastnost Modifiers (SHIFT, CTRL nebo ALT).
  • Vlastnost KeyData (která kombinuje kód klíče a modifikátor). Parametr KeyEventArgs také poskytuje:

    • Vlastnost Handled, kterou lze nastavit tak, aby se zabránilo podkladovému ovládacímu prvku v přijímání klíče.
    • Vlastnost SuppressKeyPress, která se dá použít k potlačení událostí KeyPress a KeyUp, které souvisejí se stisknutím klávesy.
KeyPress Tato událost se vyvolá, když stisk jedné nebo více kláves vyústí ve vytvoření znaku. Uživatel například stiskne klávesu SHIFT a malá písmena "a", což má za následek velké písmeno "A". KeyPress je aktivována po KeyDown.

  • Obslužná rutina pro KeyPress přijímá:
  • Parametr KeyPressEventArgs, který obsahuje kód znaku stisknuté klávesy. Tento kód znaku je jedinečný pro každou kombinaci znakové klávesy a modifikační klávesy.

    Například klíč "A" vygeneruje:

    • Kód znaku 65, pokud je stisknut klávesou SHIFT
    • Nebo klávesu CAPS LOCK, 97, pokud je stisknuta samostatně,
    • A 1, pokud je stisknuta klávesou CTRL.
KeyUp Tato událost se vyvolá, když uživatel uvolní fyzický klíč. Obslužná rutina pro KeyUp přijímá:

  • Parametr KeyEventArgs:

    • Která poskytuje vlastnost KeyCode (která určuje fyzické tlačítko klávesnice).
    • Vlastnost Modifiers (SHIFT, CTRL nebo ALT).
    • Vlastnost KeyData (která kombinuje kód klíče a modifikátor).

Viz také