| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 873 人关注过本帖
标题:关于键盘事件的问题
只看楼主 加入收藏
jedypjd
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:9
帖 子:1096
专家分:4969
注 册:2009-7-27
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
关于键盘事件的问题
当Form里面加button时候,Form就会捕捉不到键盘事件,求解
搜索更多相关主题的帖子: 键盘 
2009-07-31 16:12
baikil
Rank: 10Rank: 10Rank: 10
来 自:X星球
等 级:青峰侠
威 望:4
帖 子:282
专家分:1580
注 册:2009-7-20
收藏
得分:20 
用一般的方法是一定的不足之处,
无任何的处理机制它都是由一个消息传递.则可以半路对消息的接取就行了,

 protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
    /*
     处理你传入的keys
    MessageBox.Show(keyData.ToString());
    */

    return base.ProcessCmdKey(ref msg, keyData);
 }

自创QQ群64885635,方便C#学习交流.希望各项工作路好学都好入!
2009-07-31 16:39
jedypjd
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:9
帖 子:1096
专家分:4969
注 册:2009-7-27
收藏
得分:0 
还是没明白
 protected override void OnKeyDown(KeyEventArgs e)
{
    ...
}
 这个函数怎么改,才能捕捉到键盘事件?

天涯无岁月,歧路有风尘,百年浑似醉,是非一片云
2009-07-31 17:31
rindybo
Rank: 2
等 级:论坛游民
帖 子:126
专家分:51
注 册:2007-3-8
收藏
得分:0 
把Form的属性AcceptButton指定成你要出发的button 回车事件就能响应了 不知道是不是你想要的

[ffg,#6CCFF7,#FFFFFF] ←★→┠最┨┠愛┨┠伱┨┠了┨←★→ [/ft]
2009-07-31 17:45
yangglemu
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:273
专家分:521
注 册:2006-9-15
收藏
得分:0 
楼上越说越远了
其实Form有个KeyPreview属性,将它设置为True后,就可以在其键盘事件里操作了:
form1_KeyPress(sender,e)
{
 if(e.keychar=='c')//数据为某键时进行业务工作
 e.Handled=true;//表示Form已经处理此键了,后面的控件不再处理
 e.Handled=false;//这是默认值,继续将此消息发往Form上的控件继续处理
}

试着挣个威望!
2009-07-31 18:27
wusky
Rank: 1
等 级:新手上路
帖 子:9
专家分:3
注 册:2009-7-31
收藏
得分:0 
回复 5楼 yangglemu
我是新手啊,只能支持各位大侠积极的讨论
2009-07-31 18:37
快速回复:关于键盘事件的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017276 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved