c# - 多个同时按键c#

标签 c# keydown

我正在用 Microsoft Visual Studio C# 编写一个游戏,我必须同时捕捉很多键。我无法同时检测到 Q、W、E、R、T、Y,但我可以检测到 Q、W、E、R、T、A。

我尝试使用 KeyDown 和 [DllImport("user32.dll")] 但它们的结果相同。 Y 键和 A 键有什么区别,我该如何解决这个问题?

int code1 = GetVirtualKeyCode(Keys.Q);
int code2 = GetVirtualKeyCode(Keys.W);
int code3 = GetVirtualKeyCode(Keys.E);
int code4 = GetVirtualKeyCode(Keys.R);
int code5 = GetVirtualKeyCode(Keys.T);
int code6 = GetVirtualKeyCode(Keys.Y);
if ((array[code1] & 0x80) != 0 &&
    (array[code2] & 0x80) != 0 &&
    (array[code3] & 0x80) != 0 &&
    (array[code4] & 0x80) != 0 &&
    (array[code5] & 0x80) != 0 &&
    (array[code6] & 0x80) != 0)
{
    listBox1.Items.Add("asdasdasd");
}

最佳答案

可能与您的键盘有关。当我还是游戏玩家时,我知道能够同时发送多个击键是键盘的一个属性;根据键盘的不同,数字会有所不同,但不同的组合也可能有效或无效。

关于c# - 多个同时按键c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16673728/

相关文章:

javascript - F8 键可以在我的应用程序中的 javascript 和 windowForm 中使用吗?

c# - 如何从mysql数据库中检索图像?

c# - Facebook 未检测到 og 标签

c# - 未触发 KeyDown 事件

javascript - 将焦点从最后一个元素循环到第一个元素,反之亦然

javascript - 如何覆盖HTML5输入数字步进功能?使用 jQuery

c# - 控制键加鼠标滚轮

c# - 从 JSON 检索项目时获取 'Cannot cast Newtonsoft.Json.Linq.JObject to Newtonsoft.Json.Linq.JToken'

c# - 在 gcc 中传递参数的问题

c# - Windows.Web.Http.HttpClient : Receiving cookies and save them