QueryContinueDragEventArgs.KeyState Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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.