博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
部分Qt内容集合
阅读量:6206 次
发布时间:2019-06-21

本文共 771 字,大约阅读时间需要 2 分钟。

hot3.png

int QWheelEvent::delta () const
  1. 当鼠标滑轮在滚动时用于返回滑动的距离,该值等于鼠标旋转角度的8倍。正数值表示滑轮相对于用户在向前滑动,  

  2. 相反,负数值表示滑轮相对于用户是向后滑动的。  

  3.   

  4. 大多数鼠标工作在单步15度的情况下(意思是鼠标转轮滑动一圈是360度,细化成单步就是1度,那么鼠标转轮滑动一度对应于窗口界面单位尺度的8倍),在这种情况下,delta的返回值是120的倍数。计算公式:120 units/8=15度。  

  5.   

  6. 但是,有些鼠标有更好的解决方案,而且对顶单步值小于15度即delta()的返回值比120要小,为了支持这种可能性,在鼠标事件中既可以累积该返回值,  

  7. 直到该返回值累加到120为止,然后滚动窗口;或者可以小幅度的滚动窗口作为对每一次鼠标滚动事件的响应,从而计算该返回值。例如:

void MyWidget::wheelEvent(QWheelEvent *event)   {       int numDegrees = event->delta() / 8;       int numSteps = numDegrees / 15;           if (event->orientation() == Qt::Horizontal) {                  scrollHorizontally(numSteps);       //水平滚动       } else {           scrollVertically(numSteps);       //垂直滚动       }       event->accept();      //接收该事件   }

转载于:https://my.oschina.net/weiweiqiao/blog/310163

你可能感兴趣的文章
51、YUM安装配置LAMP、phpMyAdmin实战
查看>>
War-Driving(战争驾驶***)
查看>>
struts2遍历<select>
查看>>
DNN使用非80端口和总是跳转到http://localhost问题的解决
查看>>
linux高可用
查看>>
写在前面
查看>>
Windows 下单机最大TCP连接数
查看>>
java每日小算法(10)
查看>>
【年少的风】C#小学生算式×××2
查看>>
微服务架构技能
查看>>
Yeslab现任明教教主ISE课程前七部分免费发布
查看>>
【Git入门之五】版本管理
查看>>
我的友情链接
查看>>
基本概念-数据类型
查看>>
LVS负载均衡(3)——LVS工作模式与工作原理
查看>>
多语言版希尔排序
查看>>
Json字符串处理
查看>>
[LeetCode Online Judge]系列-求二维平面内在一条直线上的最大点数
查看>>
运维人,你应该了解的三张武功心法图(转载)
查看>>
选项板概述
查看>>