手柄中间这个按键长按短按是干嘛用的我长按后就没反应了,再长按就好了

最近在开发的时候发现一个问题,通常在qt中为了某个按键功能的设置,对应的函数有keyPressEvent、keyReleaseEvent,分别对应按下和弹起两个状态,本来在这个里面设置一些功能函数就可以完成效果,但是这次发现,在长按某个按键的时候,QT中并没有别的工具中比如Longpress的事件,所以长按的时候他会不断的按下,弹起切换,可以在中间加个打印就可以看出来,但是QT提供了一个isAutoRepeat的函数,是个bool值,用来判断是否有响应press或者release,因此为了解决这儿的问题,让当长按键的时候不会有不断切换的问题,这儿可以设置一个flag,来控制,具体函数如下
此处只写了keypressevent和keyreleaseevent的部分函数
void Widget::keyPressEvent(QKeyEvent *event)
switch(event-&key()){
case Qt::Key_Enter:
if(!event-&isAutoRepeat()&&!PressFlag){
PressFlag=
//此处添加需要实现的代码;
QWidget::keyPressEvent(event);
void Widget::keyReleaseEvent(QKeyEvent *event)
switch(event-&key())
case Qt::Key_Enter:
if(PressFlag&&!event-&isAutoRepeat()){
PressFlag=
//此处写需要实现的代码;
QWidget::keyReleaseEvent(event);
本文已收录于以下专栏:
相关文章推荐
有时候我们不想一下一下的按QPushButton来执行某个事件,希望一直按着按钮,就使事件不断的执行,比如翻页等操作。Qt中三个函数可以帮助我们实现这个操作:
void setAutoRepeat ...
提要需求:加载一张图片并显示,可以放大缩小,可以截取图片的某个矩形并保存。原以为蛮简单的一个功能,其实还是有点小复杂。最简单Qt图片浏览器可以参考Qt自带的Demo:Image Viewer Exam...
http://zz./blog/static//
吐槽一下Qt的按键消息响应  
 最近用Ogr...
原文链接    最近用Ogre结合Qt时发现了一个问题,就是Qt的按键消息响应。具体情况请看下面的转载内容:        Qt的消息响应可重载Widget中的keyPressEvent、keyRel...
public class KeyUtils {
private boolean isVolumeDown =
private boolean isVolumeUp =
据说造成卡顿的原因是window系统为了照顾手不利索的人实现的功能,网页上做动画,连续按键刚开始会卡顿一下,会感觉动画不流畅,解决方案如下代码
解决onkeydown卡顿问题
原文:/zp/message.aspx不过我在网上游逛了很久,也看过不少源程序了,没有发现这种按键处理办法的踪迹,所以,我将他共享...
有个功能,通过长按menu按键,可以旋转屏幕方向(0°或者90°),这个功能有时蛮有用的,下面来看看是如何实现的:
  1 修改按键处理程序
  frameworks/policies/b...
他的最新文章
讲师:王哲涵
讲师:韦玮
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)商品名称:
评价得分:
其他谈论话题
多品类齐全,轻松购物
快多仓直发,极速配送
好正品行货,精致服务
省天天低价,畅选无忧}

我要回帖

更多关于 android 按键长按事件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信