• 3592阅读
  • 5回复

怎样检测“无操作”状态? [复制链接]

上一主题 下一主题
离线wato
 
只看楼主 倒序阅读 楼主  发表于: 2009-08-19


我想实现如果对一个界面无任何键盘按下的操作,等待10秒后返回至另一个界面

我在timerEvent里是这样写的:
if(“无操作“)
{
        a++;
        if(a==10)
        {
            a = 0;
            emit back();
        }
}

主要是不知道怎么写这个“无操作”的条件。

请大家帮忙,谢谢
离线rqzrqh

只看该作者 1楼 发表于: 2009-08-19
应该是调用app内的函数吧
离线donixli1314

只看该作者 2楼 发表于: 2009-08-19
我想可以有两种方法:
1,定时检测窗口是否在最顶层,如果不是在最顶层,一般应该是无操作;
2,对窗口增加鼠标离开事件和按键弹起事件,当这两个事件触发就开始计时,到10秒就弹出另一个窗口。
离线wato
只看该作者 3楼 发表于: 2009-08-19
谢谢二位

楼上的,可以说具体点吗  因为你说的这些函数我都没用过  还有我这个只有键盘  不打算用鼠标
离线sdh-bing
只看该作者 4楼 发表于: 2009-08-19
可以重新实现你的widget的keypressevent()函数,然后在你的widget中定义一个QTimer,设置为10秒超时emit back();
当有按键按下时,keypressevent()就会被调用
所以你在keypressevent()调用QTimer.restart()就可以了
离线wato
只看该作者 5楼 发表于: 2009-08-19
引用第4楼sdh-bing于2009-08-19 13:50发表的  :
可以重新实现你的widget的keypressevent()函数,然后在你的widget中定义一个QTimer,设置为10秒超时emit back();
当有按键按下时,keypressevent()就会被调用
所以你在keypressevent()调用QTimer.restart()就可以了



去试试...

对这些类用的少  有哪些函数都不清楚~  愁阿
快速回复
限100 字节
 
上一个 下一个