C#中KeyDown與KeyUp事件

來源:互聯網
上載者:User

      在鍵盤按下鍵然後釋放的過程中有3個事件發生,分別為KeyDown事件、KeyPress事件和KeyUp事件。 KeyDown和KeyUp事件讓應用程式捕捉使用者在鍵盤上按下的特殊鍵或某些特定鍵甚至按鍵組合,只有在想要取得按下鍵或特殊鍵的相關資訊時,才用到KeyDown和KeyUp事件。下面對KeyDown和KeyUp事件分別進行介紹。

1.KeyDown事件

KeyDown事件在首次按下某個鍵時發生。

   樣本   KeyDown事件的使用

本樣本中,判斷使用者是否按下特殊鍵,如果是,則顯示在表單的標題列上。

程式主要代碼如下。

       private void textBox1_KeyDown(object sender, KeyEventArgs e)

        {

            string G_str_Mode = "";

            string G_str_text = e.KeyCode + ":" + e.Modifiers + ":" + e.KeyData + ":" + "(" + e.KeyValue + ")";

             if (e.Shift == true)

                G_str_Mode = "Shift 鍵被按下";

            if (e.Control == true)

                G_str_Mode = "Ctrl 鍵被按下";

            if (e.Alt == true)

                G_str_Mode = "ALT 鍵被按下";

            this.Text = G_str_text + G_str_Mode;

        }

注意:上面的代碼中,KeyDown事件取得了一個KeyEventArgs對象e,並返回相關的按鍵資訊,KeyEventArgs參數提供數個屬性值,這些屬性根據鍵盤上被按下的按鍵返回對應值。KeyEventArgs參數的屬性值如表所示。

表   KeyEventArgs屬性值

屬性值

說明

Control

擷取一個值,該值指示是否曾按下Ctrl鍵

KeyCode

擷取KeyDown或KeyUp事件的鍵盤代碼

KeyData

擷取KeyDown或KeyUp事件的鍵資料

KeyData

擷取KeyDown或KeyUp事件的鍵資料

KeyValue

擷取KeyDown或KeyUp事件的鍵盤值

Modifiers

擷取KeyDown或KeyUp事件的修飾符標誌。這些標誌指示按下的Ctrl、Shift和Alt鍵的組合

Shift

擷取一個值,該值指示是否曾按下Shift鍵

2.Keyup事件

Keyup事件在釋放鍵時發生。

   樣本 Keyup事件的使用

本樣本實現的是,當程式啟動並執行時候,按完鍵盤後,自動化佈建表單的大小。

程式主要代碼如下。

private void frmKeyDownUP_KeyUp(object sender, KeyEventArgs e)

        {

            this.ClientSize = new System.Drawing.Size(800,100);

        }

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.