KeyEventArgs.KeyData Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
public:
property System::Windows::Forms::Keys KeyData { System::Windows::Forms::Keys get(); };
public System.Windows.Forms.Keys KeyData { get; }
member this.KeyData : System.Windows.Forms.Keys
Public ReadOnly Property KeyData As Keys
Nilai Properti
yang Keys mewakili kode kunci untuk tombol yang ditekan, dikombinasikan dengan bendera pengubah yang menunjukkan kombinasi tombol CTRL, SHIFT, dan ALT mana yang ditekan secara bersamaan.
Contoh
Contoh kode berikut menunjukkan penggunaan anggota ini. Dalam contoh, penanganan aktivitas melaporkan terjadinya Control.KeyDown peristiwa. Laporan ini membantu Anda mempelajari kapan peristiwa terjadi dan dapat membantu Anda dalam penelusuran kesalahan. Untuk melaporkan beberapa peristiwa atau pada peristiwa yang sering terjadi, pertimbangkan untuk mengganti MessageBox.Show dengan Console.WriteLine atau menambahkan pesan ke multibaris TextBox.
Untuk menjalankan kode contoh, tempelkan ke dalam proyek yang berisi instans jenis yang mewarisi dari Control, seperti Button atau ComboBox. Kemudian beri nama instans Control1
dan pastikan bahwa penanganan aktivitas dikaitkan dengan Control.KeyDown peristiwa.
private void Control1_KeyDown(Object sender, KeyEventArgs e) {
System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "Alt", e.Alt );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Control", e.Control );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Handled", e.Handled );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "KeyCode", e.KeyCode );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "KeyValue", e.KeyValue );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "KeyData", e.KeyData );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Modifiers", e.Modifiers );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "Shift", e.Shift );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "SuppressKeyPress", e.SuppressKeyPress );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "KeyDown Event" );
}
Private Sub Control1_KeyDown(sender as Object, e as KeyEventArgs) _
Handles Control1.KeyDown
Dim messageBoxVB as New System.Text.StringBuilder()
messageBoxVB.AppendFormat("{0} = {1}", "Alt", e.Alt)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Control", e.Control)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Handled", e.Handled)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "KeyCode", e.KeyCode)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "KeyValue", e.KeyValue)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "KeyData", e.KeyData)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Modifiers", e.Modifiers)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "Shift", e.Shift)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "SuppressKeyPress", e.SuppressKeyPress)
messageBoxVB.AppendLine()
MessageBox.Show(messageBoxVB.ToString(),"KeyDown Event")
End Sub
Keterangan
Anda dapat menggunakan konstanta dari Keys untuk mengekstrak informasi dari KeyData properti . Gunakan operator AND bitwise untuk membandingkan data yang dikembalikan dengan KeyData konstanta di Keys untuk mendapatkan informasi tentang tombol mana yang ditekan pengguna. Untuk menentukan apakah tombol pengubah tertentu ditekan, gunakan Controlproperti , Shift, dan Alt .