C#如何全局禁用键盘的回车键

C#如何利用钩子或者什么办法全局禁用回车这个按键,比如:我把我的winform的窗口给最小化,然后进入网页,我按回车回车不会作用在网页上。... C#如何利用钩子或者什么办法 全局禁用回车这个按键,比如:我把我的winform的窗口给最小化,然后进入网页,我按回车 回车不会作用在网页上。 展开
 我来答
lzh3452
推荐于2016-05-06 · TA获得超过1044个赞
知道小有建树答主
回答量:1168
采纳率:100%
帮助的人:863万
展开全部
在窗口内,通过重写ProcessDialogKey这个方法可以完全屏蔽回车键,具体代码可以参照帮助,就是个if判断而已,但弹出的网页已经不再程序的作用范围之内了,属于系统中的另一个程序,也就是浏览器,这个就不能控制了。但如果使用钩子之类的底层API去监听整个windows的Key按下事件从而屏蔽回车的话,可能会影响到其他程序,并不是个好办法。
更多追问追答
追问
不考虑影响其他程序 就是要实现这个效果,因该如何禁止?我试过钩子监听然后事件里用弹出messageBox的方式来禁止,但是会导致系统卡一段时间不知道为什么。利用钩子监听如何有效的禁用回车呢
追答
你不弹MessageBox不就好了,尽量减少代码,越是底层的东西越应该写的简洁,否则就会影响速度。就像画面刷新事件paint,你写几行判断没关系,可要是写个长点的,就会影响用户体验。因为他的触发频率太高,所以必须要减少程序的执行时间,以增加流畅性。
du瓶邪
推荐于2016-05-23 · TA获得超过2.4万个赞
知道大有可为答主
回答量:1.7万
采纳率:100%
帮助的人:2968万
展开全部
//在KeyPress事件里写
if (e.KeyChar == (char)Keys.Enter)
{
e.Handled = true;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式