按键盘上的C#应用程序按钮
我有一个示例C#应用程序,它有如下4个按钮: 我希望当我按下一个向上按钮时,其他按钮分别被按下C#应用程序中相应的按钮(当窗口聚焦时),并与键盘同时被按下。如何做到这一点?我试过使用KeyEventArgs和KeyPress但我觉得有点困惑 LE:同时按下两个按钮的可能性: ====================================================== 稍后编辑:我真的不明白。我已经创建了一个新项目。整个守则是:按键盘上的C#应用程序按钮,c#,keypress,keyboard-events,C#,Keypress,Keyboard Events,我有一个示例C#应用程序,它有如下4个按钮: 我希望当我按下一个向上按钮时,其他按钮分别被按下C#应用程序中相应的按钮(当窗口聚焦时),并与键盘同时被按下。如何做到这一点?我试过使用KeyEventArgs和KeyPress但我觉得有点困惑 LE:同时按下两个按钮的可能性: ====================================================== 稍后编辑:我真的不明白。我已经创建了一个新项目。整个守则是: using System; using Syste
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace test3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.KeyDown += Form1_KeyDown;
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Up) { MessageBox.Show("|"); }
}
}
}
这是新项目的全部代码,为什么按下键盘上的向上按钮时不显示te消息框?它适用于字母…使用KeyUp和KeyDown。按键事件不是由箭头键触发的 编辑:这适合我
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.KeyDown += Form1_KeyDown;
}
void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Up) { MessageBox.Show("|"); }
}
}
根据:
我试过这个。当按键(^v)只是将焦点移动到不同的按钮,但不想执行时,请单击。。。它仅适用于字母,不适用于<>^,但执行的单击不可见。是否有任何方法可以使其完全像点击按钮一样可见?可能是重复的
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
switch (keyData)
{
case Keys.Right:
button1.PerformClick();
return true;
case Keys.Left:
//...
default:
return base.ProcessCmdKey(ref msg, keyData);
}
}