c#按键键盘事件监控键盘上下左右和其它按键
重写:protected override bool ProcessDialogKey(Keys keyData)就可以实现了。
放在窗口类里面
public partial class Form_XYZ_Jog : Form
{
xxxxx
}
protected override bool ProcessDialogKey(Keys keyData){// MessageBox.Show(keyData.ToString());string direction2 = keyData.ToString();string Left = "A";string Right = "D";string Front = "W";string Back = "S";string Up = "Up";string Down = "Down";label_press_msg.Text = "已按下:" + direction2;Console.WriteLine(DateTime.Now.ToString()+ label_press_msg.Text);if (direction2 ==Left){button_move_left.Focus();EnableLeftRightFrontBack(true);EnableUpDown(false);}else if(direction2 == Right){button_move_right.Focus();EnableLeftRightFrontBack(true);EnableUpDown(false);}else if (direction2 == Front){button_move_front.Focus();EnableLeftRightFrontBack(true);EnableUpDown(false);}else if (direction2 == Back){button_move_back.Focus();EnableLeftRightFrontBack(true);EnableUpDown(false);}else if (direction2 == Up){button_move_down.Focus();EnableLeftRightFrontBack(false);EnableUpDown(true);}else if (direction2 == Down){button_move_up.Focus();EnableLeftRightFrontBack(false);EnableUpDown(true);}return base.ProcessDialogKey(keyData);}