QueryContinueDragEventArgs.KeyState Proprietà

Definizione

Ottiene lo stato corrente dei tasti MAIUSC, CTRL e ALT.Gets the current state of the SHIFT, CTRL, and ALT keys.

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.The current state of the SHIFT, CTRL, and ALT keys.

Esempio

Nell'esempio di codice riportato di seguito viene illustrato l'utilizzo di questo membro.The following code example demonstrates the use of this member. Nell'esempio, un gestore eventi segnala l'occorrenza dell'evento Control.QueryContinueDrag.In the example, an event handler reports on the occurrence of the Control.QueryContinueDrag event. Questo report consente di apprendere quando si verifica l'evento e può facilitare il debug.This report helps you to learn when the event occurs and can assist you in debugging. Per creare report su più eventi o sugli eventi che si verificano di frequente, è consigliabile sostituire MessageBox.Show con Console.WriteLine o accodare il messaggio a una TextBoxa più righe.To report on multiple events or on events that occur frequently, consider replacing MessageBox.Show with Console.WriteLine or appending the message to a multiline TextBox.

Per eseguire il codice di esempio, incollarlo in un progetto che contiene un'istanza di un tipo che eredita da Control, ad esempio un Button o ComboBox.To run the example code, paste it into a project that contains an instance of a type that inherits from Control, such as a Button or ComboBox. Assegnare quindi un nome all'istanza Control1 e assicurarsi che il gestore eventi sia associato all'evento Control.QueryContinueDrag.Then name the instance Control1 and ensure that the event handler is associated with the Control.QueryContinueDrag event.

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 proprietà KeyState identificano le chiavi o i pulsanti del mouse che sono stati premuti durante l'operazione.The bits that are set in the KeyState property identify the keys or mouse buttons that were pressed during the operation. Se, ad esempio, viene premuto il pulsante sinistro del mouse, viene impostato il primo bit della proprietà KeyState.For example, if the left mouse button is pressed, the first bit in the KeyState property is set. È possibile utilizzare l'operatore di AND bit per bit per verificare lo stato di una chiave specificata.You can use the bitwise AND operator to test for a given key state.

Nella tabella seguente sono elencati i bit impostati per un evento specificato.The following table lists the bits that are set for a specified event.

BitBit ChiaveKey
11 Rappresenta il pulsante sinistro del mouse.The left mouse button.
22 Rappresenta il pulsante destro del mouse.The right mouse button.
44 Rappresenta il tasto MAIUSC.The SHIFT key.
88 Tasto CTL.The CTL key.
1616 Rappresenta il pulsante centrale del mouse.The middle mouse button.
3232 Rappresenta il tasto ALT.The ALT key.

Per impostazione predefinita, l'evento QueryContinueDrag imposta Action su DragAction.Drop se KeyState indica che è stato premuto il pulsante sinistro, centrale o destro del mouse.By default, the QueryContinueDrag event sets Action to DragAction.Drop if KeyState indicates that the left, middle, or right mouse button is pressed.

Si applica a

Vedi anche