QueryContinueDragEventArgs.KeyState Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u de huidige status van de toetsen Shift, Ctrl en Alt op.
public:
property int KeyState { int get(); };
public int KeyState { get; }
member this.KeyState : int
Public ReadOnly Property KeyState As Integer
Waarde van eigenschap
De huidige status van de toetsen Shift, Ctrl en Alt.
Voorbeelden
In het volgende codevoorbeeld ziet u het gebruik van dit lid. In het voorbeeld rapporteert een gebeurtenis-handler over het optreden van de Control.QueryContinueDrag gebeurtenis. Dit rapport helpt u te leren wanneer de gebeurtenis plaatsvindt en u kan helpen bij het opsporen van fouten. Als u wilt rapporteren over meerdere gebeurtenissen of gebeurtenissen die vaak optreden, kunt u overwegen het bericht te vervangen MessageBox.ShowConsole.WriteLine door of toe te voegen aan een multiline TextBox.
Als u de voorbeeldcode wilt uitvoeren, plakt u deze in een project dat een exemplaar bevat van een type dat overgaat van Control, zoals een Button of ComboBox. Geef het exemplaar Control1 een naam en zorg ervoor dat de gebeurtenis-handler aan de Control.QueryContinueDrag gebeurtenis is gekoppeld.
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
Opmerkingen
De bits die in de KeyState eigenschap zijn ingesteld, identificeren de toetsen of muisknoppen die tijdens de bewerking zijn ingedrukt. Als de linkermuisknop bijvoorbeeld wordt ingedrukt, wordt de eerste bit in de KeyState eigenschap ingesteld. U kunt de bitsgewijze AND operator gebruiken om te testen op een bepaalde sleutelstatus.
De volgende tabel bevat de bits die zijn ingesteld voor een opgegeven gebeurtenis.
| Bit | Sleutel |
|---|---|
| 1 | De linkermuisknop. |
| 2 | De rechtermuisknop. |
| 4 | De SHIFT-toets. |
| 8 | De CTL-sleutel. |
| 16 | De middelste muisknop. |
| 32 | De Alt-toets. |
De gebeurtenis wordt standaard QueryContinueDrag ingesteld ActionDragAction.Drop op als KeyState wordt aangegeven dat de linker-, middelste of rechtermuisknop wordt ingedrukt.