QueryContinueDragEventArgs.KeyState Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lekéri a SHIFT, a CTRL és az ALT billentyűk aktuális állapotát.
public:
property int KeyState { int get(); };
public int KeyState { get; }
member this.KeyState : int
Public ReadOnly Property KeyState As Integer
Tulajdonság értéke
A SHIFT, CTRL és ALT billentyűk aktuális állapota.
Példák
Az alábbi példakód bemutatja ennek a tagnak a használatát. A példában egy eseménykezelő jelentést készít az Control.QueryContinueDrag esemény előfordulásáról. Ez a jelentés segít megismerni az esemény bekövetkeztét, és segítséget nyújthat a hibakeresésben. Ha több eseményről vagy gyakran előforduló eseményről szeretne jelentést tenni, fontolja meg az üzenet többsorosra MessageBox.Showcserélését Console.WriteLineTextBox vagy hozzáfűzését.
A példakód futtatásához illessze be egy olyan projektbe, amely egy olyan típusú példányt tartalmaz, amelytől Controlöröklődnek, például egy Button vagy ComboBox. Ezután nevezze el a példányt Control1 , és győződjön meg arról, hogy az eseménykezelő társítva van az Control.QueryContinueDrag eseményhez.
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
Megjegyzések
A tulajdonságban beállított bitek azonosítják a KeyState művelet során lenyomott kulcsokat vagy egérgombokat. Ha például a bal egérgombot lenyomja, a tulajdonság első bitje KeyState be van állítva. A bitenkénti AND operátorral tesztelheti egy adott kulcsállapotot.
Az alábbi táblázat a megadott eseményhez beállított biteket sorolja fel.
| Bit | Key |
|---|---|
| 1 | A bal egérgomb. |
| 2 | A jobb egérgomb. |
| 4 | A SHIFT billentyű. |
| 8 | A CTL-kulcs. |
| 16 | A középső egérgomb. |
| 32 | Az ALT billentyű. |
Alapértelmezés szerint az QueryContinueDrag esemény azt ActionDragAction.DropKeyState jelzi, hogy a bal, középső vagy jobb egérgomb lenyomva van-e.