我有一个带有按钮的.NET应用程序,这些按钮使用数字作为助记符。 (例如“& 1 - Check”和“& 2 - Cash”)当我按下Alt + 1时,我希望点击Check按钮。这在我使用键盘上的标准数字键时有效。但是,当我使用数字键盘按Alt + 1时,Windows接管并插入符合“alt代码”1的符号。请参阅http://alt-codes.org/list/。 如何防止在我的应用程序中发生这种情况?
谢谢!
答案 0 :(得分:2)
这可以通过在表单上启用KeyPreview并处理KeyUp事件来完成。 以下代码绕过Windows alt代码功能,并在按下Alt + NumPad1时单击按钮:
if (e.Alt && e.KeyCode == Keys.NumPad1)
{
e.Handled = true;
button1.PerformClick();
}
答案 1 :(得分:1)
这个Alt + numkey组合是一个Windows功能(非常有用),你无法绕过它
我刚刚在玩游戏时尝试了这个(你知道......技能栏快捷方式?☺)我做了一些研究......这是不可能的。
我也很高兴看到这方面的方法!
答案 2 :(得分:1)
执行此操作的一种可能方法是使用keyboard hooks,拦截按键,然后按照您的意愿行事。现在,它会解决上述问题,并阻止操作系统插入charcode,我不知道。