首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

qt按键长按功能的实现解决方案

2013-01-25 
qt按键长按功能的实现qt中如何实现按键长按功能:在按键按下不松,实现自己想要的功能。keypressevent功能是

qt按键长按功能的实现
qt中如何实现按键长按功能:在按键按下不松,实现自己想要的功能。keypressevent功能是按下就响应。我想按下后一段时间才响应。
[解决办法]
按下后,启动一个定时器,在超时槽函数中实现自己想要的功能。
[解决办法]
补充一下楼上的。
button的clicked信号其实是融合了两个信号,楼主要实现这样的功能的话,最好不要使用这个信号
button还有两个信号,分别是pressed 和released,pressed 触发的时候,启动一个定时器,一直按住超时的话执行你要的操作,但是如果还没到时间就松开时收到了released信号,就要停止定时器,不响应你要的操作
[解决办法]
同意楼上的观点,可以在pressed事件中触发另外一个SIGNAL
这个SIGNAL与一个定时器做绑定 在定时器里判定超时时间是否到了
[解决办法]
从按下开始计时、然后弹起的时候判断这个时间到了吗?
到了就在弹起的时候执行你的action
[解决办法]
setAutoRepeat ( bool )
setAutoRepeatDelay ( int )
setAutoRepeatInterval ( int )
这有QPushButton的三个函数,
setAutoRepeat (true);
setAutoRepeatDelay ( 你需要的时间如:1000(ms) )
setAutoRepeatInterval (100000)

热点排行