无法触发事件 Key_Down c#
Can't fire event Key_Down c#
我使用表单事件 Form1_KeyDown 移动 panelcontrol4
Private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Left)
{
panelControl4.Location = new Point(panelControl4.Location.X-1,panelControl4.Location.Y);
}
}
如果 Form1 有 1 个控制面板控制事件有效,但我添加了 1 个控件,例如:simplebutton1 ... 然后无法触发 Form1_KeyDown。然后我必须 enable = false simplebutton1 ,然后 Form1_KeyDown work
感谢您的帮助
表单上的控件可能会自动处理按键事件,并且不会调用您的代码。参见 Control.KeyDown Event。
一般情况下 _KeyDown
会在控件具有 focus 时按下某个键时发生。在您的情况下, Form1
在按键发生时没有焦点。
我解决了我的问题,我必须覆盖事件 KeyDown 和 PreviewKeyDown
@马修·沃森
我使用表单事件 Form1_KeyDown 移动 panelcontrol4
Private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Left)
{
panelControl4.Location = new Point(panelControl4.Location.X-1,panelControl4.Location.Y);
}
}
如果 Form1 有 1 个控制面板控制事件有效,但我添加了 1 个控件,例如:simplebutton1 ... 然后无法触发 Form1_KeyDown。然后我必须 enable = false simplebutton1 ,然后 Form1_KeyDown work
感谢您的帮助
表单上的控件可能会自动处理按键事件,并且不会调用您的代码。参见 Control.KeyDown Event。
一般情况下 _KeyDown
会在控件具有 focus 时按下某个键时发生。在您的情况下, Form1
在按键发生时没有焦点。
我解决了我的问题,我必须覆盖事件 KeyDown 和 PreviewKeyDown @马修·沃森