QT中鼠标位置获取问题之event->globalPos()与pos()函数

标签: Qt
2015-01-03 19:41 820人阅读 评论(0) 收藏 举报
分类:
Qt

版权声明:本文为博主原创文章,未经博主允许不得转载。

最近在学习QT,准备做个界面程序,在获取鼠标位置信息时,查了好多资料,对于event->globalPos()与pos()函数都说的不是很清楚。

通过程序测试,最后是搞清楚了,在这利用形象的图解来代替文字向大家描述,更易理解些。

widget窗口是带边框的类型,如下图1(上边框和侧边框都是有厚度的)

图.1

1.而由event->globalPos()获取的鼠标位置是鼠标偏离电脑屏幕左上角(x=0,y=0)的位置;

2.由pos()获取的位置是主窗口(widget窗口)左上角(边框的左上角,外左上角)相对于电脑屏幕的左上角的(x=0,y=0)偏移位置

3.子窗口的位置属性,label->setGeometry(QRect(x,y,w,h));

其中x,y如图所示,是子窗口label左上角相对于主窗口widget窗口的左上角(除去去边框,内左上角)的偏移位置;如下图2所示,各位置信息。

                                     图.2

在计算鼠标相对于子窗口(label控件)位置时,要综合考虑这些位置关系,并且考虑边框的存在与否,当然有更好的获取位置信息的方法,望指点。

QT中鼠标位置获取问题之event-globalPos()与pos()函数相关推荐

  1. QT界面:重写鼠标事件/实时显示Label中鼠标位置

    为了在QT UI界面的状态栏实时显示鼠标在Label中的位置,需要重写鼠标事件MouseMoveEvent(). 但是MouseMoveEvent为了不过多消耗资源,默认需要鼠标按下捕捉到.因此需要在 ...

  2. QT中鼠标的绝对位置和相对位置

    参考 Qt获取鼠标位置(绝对位置.相对位置) https://blog.csdn.net/owen7500/article/details/51035078/ qt鼠标事件总结(坐标,跟踪,点击判断) ...

  3. qt linux实现鼠标位置自动移动,【已解决】qt中鼠标能显示但是无法移动

    [问题] 在完成了Linux kernel中的对应的一个模拟鼠标的输入设备(input device)easypoint驱动后,验证了该驱动可以正常工作了,输入 cat /dev/input/even ...

  4. Qt中鼠标的双击事件和单击事件的实现方式

    背景 同一个部件既要响应鼠标单击事件又要响应双击事件,而且两者响应的动作没有交集,跟不存在包含关系(如果双击事件动作包含单击事件的动作,那么只需要将双击事件特有的部分放到mouseDoubleClic ...

  5. Qt中鼠标滑过控件由箭头变成手型QWidget::setCusor()

    qt中,当要实现鼠标进入某个控件区域时,鼠标箭头变为手型效果,可以用函数QWidget::setCursor(),其中该函数原型如下所示:(该代码对于任何继承于QWidget的控件都有效,也就是无论是 ...

  6. cesium中鼠标pick获取entity空间信息

    鼠标拾取获取entity属性常用,但是获取空间信息今天用到,就简单试验了一下: var handler = new Cesium.ScreenSpaceEventHandler(viewer.scen ...

  7. QT中鼠标移动到时会出现小手

    style="cursor: pointer"

  8. JavaScript之offset实现鼠标坐标获取和窗口内模块拖动-案例演示

    offset offset 即偏移量,使用 offset 系列相关属性可以 动态的 获取该元素的位置(偏移).大小等,如: 元素距离带有定位父元素的位置 获取元素自身的大小(宽度高度) 注:返回的数值 ...

  9. 查找子串在母串中的位置、编写一个函数实现字符串拼接【数据结构实验报告算法详解】

    文章目录 一.查找子串在母串中的位置 二.一个实现字符串拼接的函数 一.查找子串在母串中的位置 #include<iostream> using namespace std;int Sea ...

最新文章

  1. “抗击”新型肺炎!阿里达摩院研发AI算法,半小时完成疑似病例基因分析
  2. 网络上的FreeBSD在线文档
  3. 详解rsync算法--如何减少同步文件时的网络传输量
  4. PAT甲级题目翻译+答案 AcWing(高精度)
  5. 镜像电流源特点_9000大型地网变频大电流接地特性测量系统介绍
  6. C# 如何转换生成长整型的时间
  7. 语音增强相关技术综述
  8. 【Android Studio快捷键】之导入相应包声明(import packages)
  9. BuzzFeed如何从Perl单体应用迁移到Go和Python微服务
  10. 语言新思路:接口+测试
  11. Ant for Vue - input、select组件placeholder无法显示
  12. 易语言静态连接器提取_vc98linker修复静态|易语言vc98linker静态连接器迷你版_最火软件站...
  13. 大数据技术原理与应用(第三版)林子雨教材配套实验答案---实验二 熟悉常用的hdfs操作
  14. AI圣经!《深度学习》中文版隆重上市!美国亚马逊AI领域排名第一畅销书!
  15. SpreadJS 15.2 英文版-Crack
  16. 差分相干解调 matlab,2DPSK差分相干解调器Simulink仿真.doc
  17. python汉语词频统计_Python之四大名著汉字词频统计
  18. 在ThemeForest上销售的利弊
  19. html实训QQ音乐官网首页制作
  20. 出现这十种症状,说明你不适合干程序员

热门文章

  1. 简单,为什么要复杂和妥协?
  2. 山东大学和哈工大的教师招聘条件对比,心里要有点数
  3. 希望找到计算机系的好期刊的影响因子的排序?并作为选刊依据?选SJR就足够了
  4. JS滚动条到网页底部自动加载更多内容
  5. [译] 常用 Phpstorm tips (下/共3部分)
  6. centos7配置安装redis
  7. 网页渲染的颜色竟然和设定值的不同!Chrome 61+色差解决办法
  8. 关于移动端meta设置(未完待续)
  9. 《Java 2D游戏编程入门》—— 1.5 创建一个主动渲染的窗口
  10. redis的数据类型及设置方法