一文讲清 QWidget 大小位置

一文讲清 QWidget 大小位置

前言

​ QWidget 的位置基于桌面坐标系,以左上角为原点,向右x轴增加,向下y轴增加。

一、图解

在这里插入图片描述

​ 如上图所示,当窗口为顶层窗口时(即没有任何父窗口),系统会自动在外围添加 边框 和 标题栏,此时,QWidget 的大小位置区域被分为两块,即:

  • 包含 外边框 和 标题栏 的 所有区域(frameGeometry),此时:

    • 位置:x,y表示为左上绿色字体图示点处
    • 大小:宽高为绿色字体图示大小
  • 不包含 外边框 和 标题栏 的 区域(geometry),也是用户区域,此时:

    • 位置:x,y表示为左上紫色字体图示点处

    • 大小:宽高为紫色字体图示大小

二、api列举

  1. 获取相关:

    在这里插入图片描述

  2. 设置相关:

    在这里插入图片描述

三、代码演示

  1. 代码

    # 0. 导入需要的包和模块
    from PyQt5.Qt import *
    import sys# 1. 创建一个应用程序对象
    app = QApplication(sys.argv)window = QWidget()
    window.move(200, 100)
    window.resize(500, 500)window.show()#*******测试大小位置api*******开始
    window.setGeometry(0, 0, 300, 300)print(window.x())
    print(window.width())
    print(window.geometry())print(window.frameGeometry())
    #*******测试大小位置api*******结束# 3. 应用程序的执行, 进入到消息循环
    sys.exit(app.exec_())
    
  2. 结果:

    在这里插入图片描述

    当设置用户区域为左上角时,可以看到 frameGeometry 左上角点位置为-1, -38,因为包含边框的左上角点被隐藏了。302,339都是加上边框大小的宽度和高度。

四、总结

  • 注意:要在show之后进行大小位置的操作,即控件显示完毕之后, 具体的位置或者尺寸数据才会正确;
  • frameGeometry 包含了外边框和标题栏,geometry 单指用户区域。

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

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

相关文章

JVM的五大分区

1.方法区 方法区主要用来存储已在虚拟机加载的类的信息、常量、静态变量以及即时编译器编译后的代码信息。该区域是被线程共享的。 2.虚拟机栈 虚拟机栈也就是我们平时说的栈内存,它是为java方法服务的。每个方法在执行的 时候都会创建一个栈帧,用于存…

数据结构学习 12字母迷宫

dfs 回溯 剪枝 这个题和dfs有关,但是我之前没有接触过,我看了这一篇很好的文章,看完之后写的答案。 我觉得很好的总结: dfs模板 int check(参数) {if(满足条件)return 1;return 0; }void dfs(int step) {判断边界{相应操作}尝试…

【JUC】二十九、synchronized锁升级之轻量锁与重量锁

文章目录 1、轻量锁2、轻量锁的作用3、轻量锁的加锁和释放4、轻量级锁的代码演示5、重量级锁6、重量级锁的原理7、锁升级和hashcode的关系8、锁升级和hashcode关系的代码证明9、synchronized锁升级的总结10、JIT编译器对锁的优化:锁消除和锁粗化11、结语 &#x1f4…

基士得耶速印机印件故障解决方法和印刷机使用注意事项

基士得耶和理光两个品牌的一体化速印机同属于理光公司的两个不同品牌。基士得耶速印机的每个机型,都有和它通用的理光速印机的机型相对应。(油墨版纸通用,外观一样,配件全部通用。)速印机在印刷的时候,经常…

USB2.0 Spec 中文篇

体系简介 线缆 USB 是一种支持热拔插的高速串行传输总线,使用一对(两根)差分信号来传输数据,半双工。要求使用屏蔽双绞线。 供电 USB 支持 “总线供电” 和 “自供电” 两种供电模式。在总线供电方式下,设备最多可…

Tofu目标识别跟踪模块

Tofu3 是多波段视频物体识别跟踪模块,支持可见光视频与红外视频的输入,支持激光补光变焦自适应控制,支持视频下的多类型物体检测、识别、跟踪等功能。 产品支持视频编码、设备管理、目标检测、深度学习识别、跟踪等功能,提供多机…

智慧灯杆技术应用分析

智慧灯杆是指在传统灯杆的基础上,通过集成多种先进技术实现城市智能化管理的灯杆。智慧灯杆技术应用的分析如下: 照明功能:智慧灯杆可以实现智能调光、时段控制等功能,根据不同的需求自动调节照明亮度,提高照明效果&am…

利用Pytorch预训练模型进行图像分类

Use Pre-trained models for Image Classification. # This post is rectified on the base of https://learnopencv.com/pytorch-for-beginners-image-classification-using-pre-trained-models/# And we have re-orginaized the code script.预训练模型(Pre-trained models)…

大型科技公司与初创公司:选择哪一个?

你有没有想过,特别是在你职业生涯的开始,选择什么类型的公司?它应该是一家像谷歌、亚马逊、Meta 这样的大型科技公司,还是为一家小型初创公司工作。在本文中,我们将讨论实际差异是什么,并帮助你选择最适合你…

『OPEN3D』1.8.3 多份点云配准

多份点云配准是将多份点云数据在全局空间中对齐的过程。通常,输入是一组数据(例如点云或RGBD图像){Pi}。输出是一组刚性变换{Ti},使得经过变换的点云在全局空间中对齐。 NNNNNathan 本专栏地址: https://blog.csdn.net/qq_41366026/category_12186023.html 此处是…

DHCP—动态主机配置协议

动态主机配置协议DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是RFC 1541(已被RFC 2131取代)定义的标准协议,该协议允许服务器向客户端动态分配IP地址和配置信息。 DHCP协议支持C/S&#x…

RocketMQ 总体概括

目录 概述RocketMQ 领域模型MQ 解决的问题电商平台案例初步设计引入中间件设计 MQ 选型结束 概述 官网地址 RocketMQ 领域模型 官方领域模型概述 下面图,是在自己理解的基础上,对官方的模型图添加了一些。 Topic:主题,可以理解…

Java网络编程——基于UDP的数据报和套接字

java.net.ServerSocket与java.net.Socket建立在TCP的基础上。TCP是网络传输层的一种可靠的数据传输协议。如果数据在传输途中被丢失或损坏,那么TCP会保证再次发送数据;如果数据到达接收方的顺序被打乱,那么TCP会在接收方重新恢复数据的正确顺…

扬声器(喇叭)

扬声器(喇叭) 电子元器件百科 文章目录 扬声器(喇叭)前言一、扬声器(喇叭)是什么二、扬声器(喇叭)的类别三、扬声器(喇叭)的应用场景四、扬声器(喇叭)的作用原理总结前言 扬声器广泛应用于音响系统、公共广播系统、汽车音响、电视、电脑和移动设备等各种电子设备…

Linux基本开发工具

编译器和自动化构建工具 一、编译器——gcc、g1. 安装 gcc/g2. 使用3. 链接库4. 拓展命令:od/file/ldd/readelf 二、自动化构建项目——make、makefile1. 介绍2. 使用例子touch——change file timestampsstat——display file or file system status修改时间 .PHON…

Qt 文字描边(基础篇)

项目中有时需要文字描边的功能 1.基础的绘制文字 使用drawtext处理 void MainWindow::paintEvent(QPaintEvent *event) {QPainter painter(this);painter.setRenderHint(QPainter::Antialiasing, true);painter.setRenderHint(QPainter::SmoothPixmapTransform, true);painte…

ceph的osd盘删除操作和iscsi扩展

ceph的osd盘删除操作 拓展:osd磁盘的删除(这里以删除node1上的osd.0磁盘为例) 1, 查看osd磁盘状态 [rootnode1 ceph]# ceph osd tree ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF -1 0.00298 root default -3 0.00099 host node10 hdd 0.00…

【Vins轨迹】pose_graph位姿图加载EVO精度评定

1. Vins的位姿图加载功能 如果想要对slam运行后的位姿轨迹进行评定,需要将数据保存到output文件夹中。 其中pose_graph.txt含有的信息:关键帧id、时间戳、vio的xyz、优化后的xyz、vio的四元数、优化后的四元数、回环到的关键帧id、回环信息&#xff08…

【十】python复合模式

10.1 复合模式简介 在前面的栏目中我们了解了各种设计模式。正如我们所看到的,设计模式可分为三大类:结构型、创建型和行为型设计模式。同时,我们还给出了每种类型的相应示例。然而,在软件实现中,模式并是不孤立地工作的。对于所…

HPM5300系列--第一篇 命令行开发调试环境搭建

一、目的 在之前的博客中《HPM6750系列--第二篇 搭建Ubuntu开发环境》、 《HPM6750系列--第三篇 搭建MACOS编译和调试环境》我们介绍了HPM6750evkmini开发环境的搭建过程,由于HPM5300系列共用一套hpm-sdk,故HPM5300的开发调试环境的搭建过程基本和之前的…