【Qt】Qt的坐标转换(mapToGlobal)

news2024/11/26 17:29:11
1、QPoint QWidget::mapToGlobal(const QPoint &pos) const
将小部件坐标转换为全局坐标。mapToGlobal(QPoint(0,0))可以得到小部件左上角像素的全局坐标。

2、QPoint QWidget::mapToParent(const QPoint &pos) const
将小部件坐标转换为父部件坐标。如果小部件没有父部件,则效果与mapToGlobal()相同。

3、QPoint QWidget::mapTo(const QWidget *parent, const QPoint &pos) const
将小部件的坐标转换为父部件的坐标系统,parent不能是0,必须是调用小部件的父部件。

4、QPoint QWidget::mapFromGlobal(const QPoint &pos) const
将全局坐标转换为小部件坐标。

5、QPoint QWidget::mapFromParent(const QPoint &pos) const
将父部件坐标转换为小部件坐标。如果小部件没有父部件,则效果与mapFromGlobal()相同。

6、QPoint QWidget::mapFrom(const QWidget *parent, const QPoint &pos) const
将小部件的坐标pos从父部件的坐标系统转换为小部件的坐标系统。parent不能是0,必须是调用小部件的父部件。

7、QPoint QMouseEvent::pos() const
返回鼠标光标相对于接收事件的小部件的位置。

8、QPoint QMouseEvent::globalPos() const
返回事件发生时鼠标光标的全局位置。

9const QPointF &QMouseEvent::screenPos() const
以QPointF的形式返回鼠标光标相对于接收事件的屏幕的位置。这个函数是在Qt 5.0中引入的。

在这里插入图片描述

代码如下:

void Widget::on_pushButton_clicked()
{
    Form *a = new Form;
    a->move(0, 0);
    a->show();
}

结果:
在这里插入图片描述
每次点击按键,生成的子窗口在屏幕的左上方,使用**this->pos()**转换的坐标后,子窗口在父窗口的左上方。
在这里插入图片描述
使用mapToGlobal转换后,每次打开都在按键的左上方。
在这里插入图片描述
加上一些控件的坐标的计算后,就可以每次打开都在控件的下面了。
在这里插入图片描述

参考文章:https://blog.csdn.net/sunflower_2020/article/details/135693171

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1941267.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux内存的概念及管理

1、内存概念 内存是指计算机中所安装的随机存取内存的容量,储存是指计算机内硬盘的容量。硬盘应当是计算机的“外存”。内存应当是在主板上的一些存储器,用来保存CPU运算使用过程中的中间数据和计算结果,当不用这些数据时,它们被保…

鸿蒙仓颉语言【Redis仓颉语言客户端】

特性 支持RESP2和RESP3协议接口设计兼容jedis接口语义丰富的管理命令支持支持单连接多线程模式支持发布订阅模式支持哨兵模式和集群模式完备的单元测试覆盖架构简洁,易于扩展 开发计划 2024.3.22 完成支持单机模式的RESP2和RESP3协议的客户端,提供Bet…

实际生活中网段不通的典型分析及处理方案

关于端口: 应用层: FTP TELNET SMTP DNS TFTP SNMP 端口号: 21 23 25 53 69 161 传输层: TCP UDP(DNS两个都占…

7月21日,贪心练习

大家好呀,今天带来一些贪心算法的应用解题、 一,柠檬水找零 . - 力扣(LeetCode) 解析: 本题的贪心体现在对于20美元的处理上,我们总是优先把功能较少的10元作为找零,这样可以让5元用处更大 …

野兔在线工具箱系统全新升级改版,基于TP8和yetuadmin后台实现

野兔在线工具箱系统全新升级改版,基于TP8和yetuadmin后台实现 系统名称:野兔在线工具系统 系统语言:支持多语言,大概有20种 系统源码:不加密,开源 系统开发:PHPMySQL (基于thinkphp8&#x…

重发布路由策略实验

实验要求 1.搭建拓扑 路由策略分析: 拓扑左边是rip协议,右边是ospf协议,想要实现全网可达可以采用多点双向重发布的方式。 对于rip协议使用偏移列表来干涉选路,对于ospf协议采用路由策略来干涉选路 2.配置ip r1 [AR1]interfac…

【初阶数据结构】深度解析七大常见排序|掌握底层逻辑与原理

初阶数据结构相关知识点可以通过点击以下链接进行学习一起加油!时间与空间复杂度的深度剖析深入解析顺序表:探索底层逻辑深入解析单链表:探索底层逻辑深入解析带头双向循环链表:探索底层逻辑深入解析栈:探索底层逻辑深入解析队列:探索底层逻辑深入解析循环队列:探索…

什么是机器学习以及机器学习如今的社会现状!!

👨‍💻个人主页:开发者-曼亿点 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 曼亿点 原创 👨‍💻 收录于专栏&#xff1a…

长效代理IP如何选用及代理服务分析

在这个数据为王、信息瞬息万变的时代,长效代理IP成为了众多开发者、数据科学家乃至普通网民手中的一把利器。它不仅能帮助我们解决地域管理,还能在保护隐私的同时,确保数据传输的稳定与安全。但面对市面上琳琅满目的代理服务,如何…

飞腾腾云S2500 Nginx单机环回测试性能调优方法

【写在前面】 飞腾开发者平台是基于飞腾自身强大的技术基础和开放能力,聚合行业内优秀资源而打造的。该平台覆盖了操作系统、算法、数据库、安全、平台工具、虚拟化、存储、网络、固件等多个前沿技术领域,包含了应用使能套件、软件仓库、软件支持、软件适…

Vulnhub靶场DC-7练习

目录 0x00 准备0x01 主机信息收集0x02 站点信息收集1. 获取用户名/密码2. ssh连接目标主机3. drush命令修改Drupal密码 0x03 漏洞查找与利用1. Drupal写入php木马2. 连接shell3. 反弹shell并提权 0x04 总结 0x00 准备 下载链接:https://download.vulnhub.com/dc/DC-…

深度学习每周学习总结N4:中文文本分类-Pytorch实现(基本分类(熟悉流程)、textCNN分类(通用模型)、Bert分类(模型进阶))

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 | 接辅导、项目定制 目录 0. 总结:1. 基础模型a. 数据加载b. 数据预处理c. 模型搭建与初始化d. 训练函数e. 评估函数f.拆分数据集运行模型g. 结果可…

git命令学习分享

分布式版本控制系统,本地仓库和远程仓库相互独立。 使用repository仓库进行控制,可以对里面的文件进行跟踪,复原。 git config --global --list:查看git配置列表 cd ** :进入** cd .. :退回上一级 echo…

【人工智能】Transformers之Pipeline(四):零样本音频分类(zero-shot-audio-classification)

​​​​​​​ 目录 一、引言 二、零样本音频分类(zero-shot-audio-classification) 2.1 概述 2.2 意义 2.3 应用场景 2.4 pipeline参数 2.4.1 pipeline对象实例化参数​​​​​​​ 2.4.2 pipeline对象使用参数 2.4 pipeline实战 2.5 模…

TinyVue:与 Vue 交往八年的组件库

本文由体验技术团队莫春辉老师原创~ 去年因故停办的 VueConf,今年如约在深圳举行。作为东道主 & 上届 VueConf 讲师的我,没有理由不来凑个热闹。大会结束后,我见裕波在朋友圈转发 Jinjiang 的文章《我和 Vue.js 的十年》,我就…

版本控制工具

版本控制工具是用于记录代码文件变化历史、方便查阅特定版本修改情况的系统,一般分为集中式和分布式两种。以下是一些常见的版本控制工具: 集中式版本控制工具 Subversion(SVN) 简介:Subversion是一种集中式版本控制…

【LeetCode】day15:110 - 平衡二叉树, 257 - 二叉树的所有路径, 404 - 左叶子之和, 222 - 完全二叉树的节点个数

LeetCode 代码随想录跟练 Day15 110.平衡二叉树257.二叉树的所有路径404.左叶子之和222.完全二叉树的节点个数 110.平衡二叉树 题目描述: 给定一个二叉树,判断它是否是 平衡二叉树 平衡二叉树的定义是,对于树中的每个节点,其左右…

文件包含漏洞: 函数,实例[pikachu_file_inclusion_local]

文件包含 文件包含是一种较为常见技术,允许程序员在不同的脚本或程序中重用代码或调用文件 主要作用和用途: 代码重用:通过将通用函数或代码段放入单独的文件中,可以在多个脚本中包含这些文件,避免重复编写相同代码。…

昇思25天学习打卡营第27天 | Diffusion扩散模型

学习心得:探索Diffusion扩散模型 在我最近对生成模型的学习中,尤其是Diffusion模型,我发现这是一种极具潜力的技术,特别是在图像生成领域。Diffusion模型的核心概念是通过一个逐步的去噪过程,将纯噪声数据转换成有意义…

算法——双指针(day4)

15.三数之和 15. 三数之和 - 力扣(LeetCode) 题目解析: 这道题目说是三数之和,其实这和我们之前做过的两数之和是一个规律的~无非就是我们需要实时改动target的值。先排好序,然后固定一个数取其负值作target&#xf…