QueryContinueDragEventArgs.KeyState Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
SHIFT, CTRL ve ALT tuşlarının geçerli durumunu alır.
public:
property int KeyState { int get(); };
public int KeyState { get; }
member this.KeyState : int
Public ReadOnly Property KeyState As Integer
Özellik Değeri
SHIFT, CTRL ve ALT tuşlarının geçerli durumu.
Örnekler
Aşağıdaki kod örneğinde bu üyenin kullanımı gösterilmektedir. Örnekte, olay işleyicisi olayın oluşumunu Control.QueryContinueDrag raporlar. Bu rapor, olayın ne zaman gerçekleştiğini öğrenmenize yardımcı olur ve hata ayıklamada size yardımcı olabilir. Birden çok olayı veya sık gerçekleşen olayları raporlamak için, iletisini ile Console.WriteLine değiştirmeyi MessageBox.Show veya iletiyi çok satırlı TextBoxbir iletiye eklemeyi göz önünde bulundurun.
Örnek kodu çalıştırmak için, veya gibi ' den Controldevralan bir türün örneğini içeren bir ButtonComboBoxprojeye yapıştırın. Ardından örneği Control1
adlandırın ve olay işleyicisinin olayla ilişkilendirildiğinden Control.QueryContinueDrag emin olun.
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
Açıklamalar
özelliğinde KeyState ayarlanan bitler, işlem sırasında basılan tuşları veya fare düğmelerini tanımlar. Örneğin, sol fare düğmesine basılırsa özelliğindeki KeyState ilk bit ayarlanır. Belirli bir anahtar durumunu test etmek için bit düzeyinde AND
işlecini kullanabilirsiniz.
Aşağıdaki tabloda, belirtilen olay için ayarlanan bitler listelenir.
Bit | Anahtar |
---|---|
1 | Sol fare düğmesi. |
2 | Sağ fare düğmesi. |
4 | SHIFT tuşu. |
8 | CTL anahtarı. |
16 | Ortadaki fare düğmesi. |
32 | ALT tuşu. |
Varsayılan olarak, QueryContinueDrag olay sol, orta veya sağ fare düğmesine basıldığını gösterirse KeyState olarak ayarlanır ActionDragAction.Drop.