Sdílet prostřednictvím


QueryContinueDragEventArgs.KeyState Vlastnost

Definice

Získá aktuální stav kláves SHIFT, CTRL a ALT.

public:
 property int KeyState { int get(); };
public int KeyState { get; }
member this.KeyState : int
Public ReadOnly Property KeyState As Integer

Hodnota vlastnosti

Aktuální stav kláves SHIFT, CTRL a ALT.

Příklady

Následující příklad kódu ukazuje použití tohoto člena. V tomto příkladu obslužná rutina události hlásí výskyt Control.QueryContinueDrag události. Tato sestava vám pomůže zjistit, kdy k události dojde, a může vám pomoct při ladění. Chcete-li hlásit více událostí nebo událostí, ke kterým dochází často, zvažte nahrazení MessageBox.ShowConsole.WriteLine nebo připojení zprávy do víceřádkového řetězce TextBox.

Pokud chcete spustit ukázkový kód, vložte ho do projektu, který obsahuje instanci typu, který dědí z Controlobjektu , například nebo ButtonComboBox. Potom instanci Control1 pojmenujte a ujistěte se, že je obslužná rutina události přidružená k Control.QueryContinueDrag události.

private void Control1_QueryContinueDrag(Object sender, QueryContinueDragEventArgs e) {

System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "KeyState", e.KeyState );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "EscapePressed", e.EscapePressed );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Action", e.Action );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "QueryContinueDrag Event" );
}
Private Sub Control1_QueryContinueDrag(sender as Object, e as QueryContinueDragEventArgs) _ 
     Handles Control1.QueryContinueDrag

    Dim messageBoxVB as New System.Text.StringBuilder()
    messageBoxVB.AppendFormat("{0} = {1}", "KeyState", e.KeyState)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "EscapePressed", e.EscapePressed)
    messageBoxVB.AppendLine()
    messageBoxVB.AppendFormat("{0} = {1}", "Action", e.Action)
    messageBoxVB.AppendLine()
    MessageBox.Show(messageBoxVB.ToString(),"QueryContinueDrag Event")

End Sub

Poznámky

Bity nastavené ve KeyState vlastnosti identifikují klávesy nebo tlačítka myši, která byla během operace stisknuta. Pokud je například stisknuto levé tlačítko myši, nastaví se první bit ve KeyState vlastnosti. Pomocí bitového AND operátoru můžete testovat stav daného klíče.

Následující tabulka uvádí bity, které jsou nastavené pro zadanou událost.

Bit Klíč
1 Levé tlačítko myši.
2 Pravé tlačítko myši.
4 Klávesa SHIFT.
8 Klíč CTL.
16 Prostřední tlačítko myši.
32 Klávesa ALT.

Ve výchozím nastavení se událost nastaví Action tak DragAction.DropKeyState, QueryContinueDrag že se stiskne levé, prostřední nebo pravé tlačítko myši.

Platí pro

Viz také