MFC键盘响应问题。长按下时,只响应一次,即只发送一次按下时的值。谢谢!

希望按钮按下和松开发送不同的值,用到了setstate()函数,主要是希望长按的时候按键只响应一次,即只发送一次按下按钮要发送的值。当长按结束松开按键的时候,再发送一次松... 希望按钮按下和松开发送不同的值,用到了setstate()函数,主要是希望长按的时候按键只响应一次,即只发送一次按下按钮要发送的值。当长按结束松开按键的时候,再发送一次松开发送的值。现在的情况是长按的时候两个值不停交替发送。很苦恼啊,纠结好几天了。 展开
 我来答
ohyourdog
2011-04-15 · TA获得超过821个赞
知道小有建树答主
回答量:298
采纳率:50%
帮助的人:366万
展开全部
请问你是监听键盘的响应事件么?
键盘本来就是按下去一个键后一直发送按下消息的。如你一直按住A,一直会有A在输出,而不会只输出一个A。
这个解决办法你可以在代码内加一个flag做判断。类似区别下长按和不停按同一个键。其实这两种操作发送的消息是一样的。你可以判断不停按之间发送两个KEY DOWN的消息的时间来区分。如果时间小于一个flag值,你可以判断此时是长按该按钮。
追问
不好意思昨天没有及时回复。
我这个应该算是监听键盘响应事件。您的建议我觉得可行,不过我水平有限,没试出来怎么区分长按和不停按的时间。后来在百度知道了看到一个方法:http://zhidao.baidu.com/question/152224905.html,晚上在我同学的大力帮助下解决了问题。
谢谢你的建议!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式