C#如何在按下w,s,a,d按钮时删除'ding'系统声音
Posted
技术标签:
【中文标题】C#如何在按下w,s,a,d按钮时删除\'ding\'系统声音【英文标题】:C# How to remove 'ding' system sound when w,s,a,d buttons are pressedC#如何在按下w,s,a,d按钮时删除'ding'系统声音 【发布时间】:2018-02-28 12:53:29 【问题描述】:首先我不能用
KeyEventArgs.SuppressKeyPress
因为我使用 Key_Down 事件来监听用户的输入,本质上我正在制作 Pacman 游戏,并且当用户按下 W 或 S 或 A 或 D Windows 发出“叮”的声音。我想禁用它,但我不知道怎么做。 我的 Key_Down 方法:
if (e.KeyCode == Keys.A) //A press moves left
k = 1;
left = true;
right = false;
up = false;
down = false;
else if(e.KeyCode == Keys.D) //D press moves right
k = 3;
left = false;
right = true;
up = false;
down = false;
else if(e.KeyCode == Keys.S)
k = 2;
left = false;
right = false;
up = false;
down = true;
else if(e.KeyCode == Keys.W)
k = 4;
left = false;
right = false;
up = true;
down = false;
我的表单使用了我在用户按下“开始”按钮时禁用的按钮。 我用:
Button.Disable = true;
这可能是由于按钮仍在侦听用户输入还是什么引起的?
我还有一些标签和一个列表框,我也需要禁用它们吗?
【问题讨论】:
disable beep of enter and escape key c sharp的可能重复 将事件设置为已处理? 我将它设置为已处理,但它仍然发出声音 链接代码也使用e.SuppressKeyPress = true
。你应该试试。
你必须下定决心。您可以使用 wasd 移动游戏对象或您可以将其用于文本输入。两者都不是。
【参考方案1】:
如果您使用的是 .NET 框架,请在处理后添加这行代码:
e.SuppressKeyPress = true;
【讨论】:
以上是关于C#如何在按下w,s,a,d按钮时删除'ding'系统声音的主要内容,如果未能解决你的问题,请参考以下文章