2012-05-17 52 views
0

我使用這些代碼通知用戶,當他們按下按鈕並在消息框中顯示它們時,您已按下按鈕。在winform中我有一個按鈕,所以這些代碼不會工作,直到我將button1 tabstop更改爲false。當我點擊按鈕後,它不會告訴用戶他們正在按下按鈕。在C#中形成keydown#

private void Form1_KeyDown(object sender, KeyEventArgs e) 
{ 
    if (e.KeyCode == Keys.A) 
    { 
     MessageBox.Show("You have pressed A"); 
    } 
} 

這些代碼不會工作,直到我將按鈕的tabstop更改爲false。幫助我如何做到這一點,並讓用戶知道他們何時按下按鈕。

任何幫助將不勝感激

回答

2

從設計器設置窗體的KeyPreview屬性爲true。它會工作

+0

是的。謝謝。有效。 – aliboy38

+0

btw用戶控件也有這個能力嗎?因爲我有一個用戶控件,但我應該將其按鈕製表符更改爲false。用戶控件具有KeyPreview屬性或其他? – aliboy38

+2

不,沒有用戶控件沒有KeyPreview類似的屬性。但即使在窗體設置中添加了用戶控件,即使焦點位於用戶控件上,KeyPreview的窗體爲true也將起作用。 – Waqar