Csharp/C#教程:禁用Alt键的正常行为分享


禁用Alt键的正常行为

Alt键时,通常焦点将转到窗口菜单。 我需要全局禁用它。 因为我的应用程序使用Alt键。 当用户与Alt键结合使用某个键时,我的应用程序会向活动应用程序发送另一个键。 所以我只需要在打开菜单时忽略Alt

我是编程新手,我正在寻找VB.Net或C#代码。

我的第一个答案是不要在程序中使用Alt键,而是使用Ctrl 。 阻止“正常”事情发生通常会导致未来的痛苦。

但是如果你必须使用Alt键,我会查看这篇文章 ,它使用消息filter来尝试在应用程序级别拦截它。

如果这不能满足您的需求,您可能需要查看全局挂钩, 此链接将帮助您从路径开始。 全局钩子通常被认为是邪恶的,所以如果以上两个建议不起作用,你应该只使用它。 您必须确保卸载挂钩,否则您可能会发现需要经常重新启动计算机以修复奇怪的键盘问题。

这对我有用:

  private class AltKeyFilter : IMessageFilter { public bool PreFilterMessage(ref Message m) { return m.Msg == 0x0104 && ((int)m.LParam & 0x20000000) != 0; } } 

然后你添加消息filter,如下所示:

上述就是C#学习教程:禁用Alt键的正常行为分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

 Application.AddMessageFilter(new AltKeyFilter()); 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1030226.html

(0)
上一篇 2022年1月13日
下一篇 2022年1月13日

精彩推荐