• 9693阅读
  • 10回复

[提问]如何知道鼠标被移动过 [复制链接]

上一主题 下一主题
离线newdc
 

只看楼主 倒序阅读 楼主  发表于: 2011-04-20
做一个待机程序,规定时间内鼠标没操作就进入待机,但如何能获得鼠标被操作的信息呢?
离线yaotong195

只看该作者 1楼 发表于: 2011-04-20
QMousemoveEvent()和QTimer 配合
离线newdc

只看该作者 2楼 发表于: 2011-04-20
引用第1楼yaotong195于2011-04-20 17:21发表的  :
QMousemoveEvent()和QTimer 配合

这个好像要点着左键移动才起作用,光移动鼠标好像没响应啊?
离线haoyuejushi
只看该作者 3楼 发表于: 2011-04-20
setMouseTracking(true);
离线roywillow

只看该作者 4楼 发表于: 2011-04-20
只是监视窗口内的鼠标移动的话需要setMouseTracking然后重载那个event
如果是监视全局的话感觉可以用QTimer来定时获得鼠标位置
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线newdc

只看该作者 5楼 发表于: 2011-04-22
引用第4楼roywillow于2011-04-20 17:37发表的  :
只是监视窗口内的鼠标移动的话需要setMouseTracking然后重载那个event
如果是监视全局的话感觉可以用QTimer来定时获得鼠标位置

请教一下,怎样才能获得鼠标位置呢?
离线hessian
只看该作者 6楼 发表于: 2011-04-22
引用第5楼newdc于2011-04-22 10:54发表的  :
请教一下,怎样才能获得鼠标位置呢?



QCursor::pos()
我的新浪微博:http://weibo.com/sseh
离线roywillow

只看该作者 7楼 发表于: 2011-04-22
楼上正解
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线newdc

只看该作者 8楼 发表于: 2011-04-25
谢谢各位,试试

只看该作者 9楼 发表于: 2011-09-05
QCursor::pos()是可以获取鼠标的位置
在应用程序外就获取不到鼠标的位置了!!!
如何获取全局的位置?
离线roywillow

只看该作者 10楼 发表于: 2011-09-05
回 9楼(爱的就是米) 的帖子
就目前我的使用来看,QCursor::pos()确实是直接获得鼠标指针在全屏的位置,只要调用这个函数。
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
快速回复
限100 字节
 
上一个 下一个