Condividi tramite


QueryContinueDragEventArgs.KeyState Proprietà

Definizione

Ottiene lo stato corrente dei tasti MAIUSC, CTRL e ALT.

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

Valore della proprietà

Stato corrente dei tasti MAIUSC, CTRL e ALT.

Esempio

Nell'esempio di codice seguente viene illustrato l'uso di questo membro. Nell'esempio un gestore eventi segnala l'occorrenza dell'evento Control.QueryContinueDrag . Questo report consente di apprendere quando si verifica l'evento e può essere utile per il debug. Per segnalare più eventi o eventi che si verificano di frequente, provare a sostituire MessageBox.Show o Console.WriteLine accodare il messaggio a un oggetto multilinea TextBox.

Per eseguire il codice di esempio, incollarlo in un progetto contenente un'istanza di un tipo che eredita da Control, ad esempio un Button oggetto o ComboBox. Assegnare quindi un nome all'istanza Control1 e verificare che il gestore eventi sia associato all'evento Control.QueryContinueDrag .

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

Commenti

I bit impostati nella KeyState proprietà identificano i tasti o i pulsanti del mouse premuti durante l'operazione. Ad esempio, se viene premuto il pulsante sinistro del mouse, viene impostato il primo bit nella KeyState proprietà . È possibile usare l'operatore bit per AND bit per verificare lo stato di una chiave specificata.

Nella tabella seguente sono elencati i bit impostati per un evento specificato.

bit Chiave
1 Rappresenta il pulsante sinistro del mouse.
2 Rappresenta il pulsante destro del mouse.
4 Rappresenta il tasto MAIUSC.
8 Tasto CTL.
16 Rappresenta il pulsante centrale del mouse.
32 Rappresenta il tasto ALT.

Per impostazione predefinita, l'evento QueryContinueDrag imposta su ActionDragAction.Drop se KeyState indica che viene premuto il pulsante sinistro, centrale o destro del mouse.

Si applica a

Vedi anche