C#2D游戏多个键不起作用

本文关键字:不起作用 游戏 C#2D | 更新日期: 2023-09-27 18:28:15

我知道这个问题被问了很多次,但我还没有找到正确的答案。

我的问题是我有一个WinForm,我喜欢按多个键来制作xD,但如果我尝试按numpad7、8和4或任何其他组合然后它就不起作用了,它什么都没有显示,但我已经按下了所有这些键

我试过这个

private void GameScreen_KeyDown(object sender, KeyEventArgs e) {
        try {
            switch (e.KeyCode) {
                case Keys.NumPad0:
                    Console.WriteLine(e.KeyData);
                    changeButtonsColor();
                    break;
                case Keys.NumPad1:
                    gb_7.BackColor = Color.MediumSpringGreen;
                    Console.WriteLine(e.KeyData);
                    break;
                case Keys.NumPad2:
                    gb_8.BackColor = Color.MediumSpringGreen;
                    Console.WriteLine(e.KeyData);
                    break;
                case Keys.NumPad3:
                    gb_9.BackColor = Color.MediumSpringGreen;
                    Console.WriteLine(e.KeyData);
                    break;
                case Keys.NumPad4:
                    gb_4.BackColor = Color.MediumSpringGreen;
                    Console.WriteLine(e.KeyData);
                    break;
                case Keys.NumPad5:
                    gb_5.BackColor = Color.MediumSpringGreen;
                    Console.WriteLine(e.KeyData);
                    break;
                case Keys.NumPad6:
                    gb_6.BackColor = Color.MediumSpringGreen;
                    Console.WriteLine(e.KeyData);
                    break;
                case Keys.NumPad7:
                    gb_1.BackColor = Color.MediumSpringGreen;
                    Console.WriteLine(e.KeyData);
                    break;
                case Keys.NumPad8:
                    gb_2.BackColor = Color.MediumSpringGreen;
                    Console.WriteLine(e.KeyData);
                    break;
                case Keys.NumPad9:
                    gb_3.BackColor = Color.MediumSpringGreen;
                    Console.WriteLine(e.KeyData);
                    break;
            }
        } catch (Exception) {
            Console.WriteLine("fail");
        }
    }

请帮我…

C#2D游戏多个键不起作用

这是无法修复的。由于键盘的工作方式,你可以同时按2个键,但一旦你开始一次按3个键,只有特定的组合才能工作。除非您更改所按的键,否则无法修改编码来解决此问题。