捕获空格键按暂停计时器C#

捕获空格键按暂停计时器C#,c#,windows,winforms,visual-studio-2008,C#,Windows,Winforms,Visual Studio 2008,我有一个windows窗体,它是一个倒计时计时器。按键盘上的空格键暂停计时器的最佳方式是什么。我有三个按钮的形式开始,暂停和停止和恢复设置。不过,我也想暂停,重新启动时按关闭空格键。我尝试添加第四个按钮,然后将其隐藏在表单上,并添加了以下代码(将EventArgs更改为KeyEventArgs: private void button1_Click(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Spac

我有一个windows窗体,它是一个倒计时计时器。按键盘上的空格键暂停计时器的最佳方式是什么。我有三个按钮的形式开始,暂停和停止和恢复设置。不过,我也想暂停,重新启动时按关闭空格键。我尝试添加第四个按钮,然后将其隐藏在表单上,并添加了以下代码(将EventArgs更改为KeyEventArgs:

    private void button1_Click(object sender, KeyEventArgs e)
    {
       if (e.KeyCode == Keys.Space)
           // Pause the timer.  
       timer1.Enabled = false;
       paused = true;
       Start.Enabled = true;
       Pause.Enabled = false;  
    }
然而,当我尝试运行这个时,我得到了一个错误——“button1\u点击匹配”没有重载 委托System.EventHandler

是否有什么我错过了或更好的方式做这件事


任何帮助/建议都将不胜感激。

点击
事件不接受
KeyEventArgs


您正在查找表单的
KeyPress
事件。

单击
事件不接受
KeyEventArgs


您正在查找表单的
KeyPress
事件。

您好-感谢您的回复-我将代码更改为:private void button1\u Click(object sender,KeyPressEventArgs e){if(e.KeyChar==Keys.Space)//暂停计时器。timer1.Enabled=false;paused=true;Start.Enabled=true;Pause.Enabled=false;}但是它不喜欢e.KeyChar==Keys.Space(运算符==不能应用于char和System.Windows.Forms.Keys类型的操作数。我还需要做些什么吗?我想你不明白SLaks的意思,你试图在一个按钮单击事件中这样做,你需要在KeyPress或KeyDown事件中这样做。@Colly:使用
'
,这是一个
char
@hdougie-我没有看到KeyPress或Keydown事件-您能告诉我工具箱上有什么吗?这是一个事件,不是控件。您将在属性网格中看到它。您好-谢谢您的回复-我将代码更改为:private void button1\u Click(object sender,KeyPressEventArgs e){if(e.KeyChar==Keys.Space)//暂停计时器。timer1.Enabled=false;paused=true;Start.Enabled=true;Pause.Enabled=false;}但是它不喜欢e.KeyChar==Keys.Space(运算符==不能应用于char和System.Windows.Forms.Keys类型的操作数。我还需要做些什么吗?我想你不明白SLaks的意思,你试图在一个按钮单击事件中这样做,你需要在KeyPress或KeyDown事件中这样做。@Colly:使用
'
,这是一个
char
@hdougie-我没有看到按键或按键事件-您能告诉我工具箱上有什么吗?它是一个事件,不是控件。您将在属性网格中看到它。