qt5-QWidget坐标系统和大小和展示区域

#include "win.h"
#include <QPushButton>
#include <QLabel>
#include <QDebug> Win::Win(QWidget *parent)
: QWidget(parent)
{
this->resize(,);
QPushButton* btn=new QPushButton("按钮",this);
btn->move(,);
i=btn->x(); //返回控件的x坐标
qDebug()<<i;
i=btn->y(); //返回控件的y坐标
qDebug()<<i;
}
相对于父控件的坐标(窗口框架左上角)
顶层控件(没有父控件)则相对于桌面的坐标
QPoint point;
point=btn->pos(); //返回控件的坐标--QPoint(15,10)
i=point.x();//提取x坐标
i=point.y();//提取y坐标
i=btn->width(); //控件的宽度,不包含任何窗口框架
i=btn->height(); //控件的高度,不包含任何窗口框架
QSize size;
size=btn->size(); //返回控件的宽和高;width和height的组合--QSize(100, 30)
i=size.width(); //提取宽度
i=size.height();//提取高度
QSize size;
QRect rect;
rect=btn->geometry(); //相对于父控件的位置和尺寸的组合---QRect(15,10 100x30)
i=rect.x(); //提取x坐标
i=rect.y(); //提取y坐标
size=rect.size();//提取大小--宽和高
i=rect.width(); //提取宽
i=rect.height(); //提取高
QSize s;
s=w.frameSize(); //框架大小.一定要在show之后,否则数据错误--QSize(516, 439)
QRect rect;
rect=w.frameGeometry(); //框架位置和大小。一定要在show之后,否则数据错误--QRect(425,133 516x439)
设置位置和尺寸:
move(x, y) 操控的是x, y;也就是pos 包括窗口框架
resize(width, height) 操控的是宽高 不包括窗口框架
如果小于最小值,就无效
setGeometry(x_noFrame, y_noFrame, width, height) 注意,此处参照为用户区域
#在show之后设置
adjustSize() 根据内容自适应大小
注意:单次有效,在设置内容后面使用
this->setFixedSize(500,400); // 设置固定尺寸
最大和最小尺寸:
minimumWidth() 返回最小尺寸的宽度
minimumHeight() 返回最小尺寸的高度
minimumSize() 返回最小尺寸 QtCore.QSize()
maximumWidth() 返回最大尺寸的宽度
maximumHeight() 返回最大尺寸的高度
maximumSize() 返回最大尺寸
setMaximumWidth() 返回设置最大宽度
setMaximumHeight() 返回设置最大高度
setMaximumSize() 返回设置最大尺寸
setMinimumWidth() 返回设置最小宽度
setMinimumHeight() 返回设置最小高度
setMinimumSize() 返回设置最小尺寸
注意 控件完全展示前后会有所差异
控件内容展示区域:
setContentsMargins(左, 上, 右, 下) 设置控件内容展示区域到边框的距离
getContentsMargins() 获取内容边距 (左, 上, 右, 下) 元组
(50, 50, 0, 0) 就是展示区域到各边框的距离
contentsRect() 获取控件内容展示区域的位置和大小。
QRect(50, 50, 150, 50) 参数1参数2 :展示区域到控件左上角的坐标 参数3:展示区域的宽;参数4:展示区域的高
注意:必须是控件本身留够对应的大小

qt5-QWidget坐标系统和大小和展示区域的更多相关文章
- pyqt5-QWidget坐标系统和大小
获取坐标和尺寸: 坐标的获取视频教程:https://v.qq.com/x/page/t085892mzh9.html x() y() 返回控件的坐标 相对于父控件的坐标(窗口框架左上角) ...
- SVG中的坐标系统和坐标变换
视野和世界 2D绘图中很多人会有一个误区,就是我绘图的区域是一个矩形区域.无论新建一个画布还是创建了一个容器,心里都想象里面有一个矩形区域.其实,在SVG当中,矩形区域只是视野,是我们看到的部分.实际 ...
- 理解SVG坐标系统和变换: transform属性
SVG元素可以通过缩放,移动,倾斜和旋转来变换-类似HTML元素使用CSS transform来变换.然而,当涉及到坐标系时这些变换所产生的影响必然有一定差别.在这篇文章中我们讨论SVG的transf ...
- 2. svg学习笔记-svg中的坐标系统和viewbox
我是通过<SVG精髓>这本书学习的svg,说实话,这本书写的不好,或者说翻译的不好,我没有看过这本书的原版,不知道原文写的怎么样,但是翻译出来的有些句子真的很拗口.以前老师给我们API文档 ...
- CSS-蜂窝状展示区域(多个六边形)的一种实现方式
网上已经有很多关于正六边形的CSS画法,主要是利用一个矩形和前后的两个三角形组合而成. 之前在看四维图新的官网的时候,发现了一种六边形的画法,比较适合多排六边形组合成蜂窝状的展示区域(注:四维图新现在 ...
- js 基于可视区域 创建展示区域对应的经纬度二维数组
本篇文章主要是分享下基于地图区域创建经纬度二维数组,需要的朋友可以过来参考下 接上个文章, 基于 地图区域,算出这个展示区域对应的点. 经纬度的变化关系: XY页面展示上, 从左到右维度是增加 如: ...
- AS3舞台的大小,可视区域大小及SWF文件的原始尺寸大小
AS3舞台的大小,可视区域大小及SWF文件的原始尺寸大小三者之间没有什么关系. 当前可视区域:stage.stageWidth,stage.stageHeight.SWF文件编译后的原始尺寸大小:lo ...
- 理解SVG坐标系统和变换: 建立新视窗
在SVG绘制的任何一个时刻,你可以通过嵌套<svg>或者使用例如<symbol>的元素来建立新的viewport和用户坐标系.在这篇文章中,我们将看一下我们如何这样做,以及这样 ...
- SVG坐标系统和transformation彻底理解
翻译自https://sarasoueidan.com/blog/svg-coordinate-systems/ SVG元素不像传统的HTML elements一样受制于css box model.这 ...
随机推荐
- jmeter-JDBC 连接池设置
- idea导入eclipse的web项目
idea导入eclipse的web项目 一.导入自己的web项目 步骤:File->New->Project from Existing Source... 二.选择项目的所在位 ...
- Maven设置阿里仓库镜像增加访问速度
修改maven的setting.xml 在mirrors节点下面添加子节点 <mirror> <id>nexus-aliyun</id> <mirrorOf& ...
- Vue的响应系统
随着 Vue 3.0 Pre Alpha 版本的公布,我们得以一窥其源码的实现.Vue 最巧妙的特性之一是其响应式系统,而我们也能够在仓库的 packages/reactivity 模块下找到对应的实 ...
- MySQL数据库增删改查SQL语句(2018整理集合大全)
查看数据库 show databases; 使用数据库 use 数据库名; 创建数据库 CREATE DATABASE 数据库名; 删除数据库 DROP DATABASE 数据库名; 创建表 cre ...
- Java 父类的static成员在子类中的继承情况
父类的static成员在子类中的继承状况是怎么样的呢? 昨天突然想到这个问题,刚才试验了一下,发现很容易解释,没什么值得探讨的. 首先在学习继承时,书本都没有强调static成员有什么特殊的地方. 然 ...
- Entity Framework Core Relationship的学习笔记
说明 此例筛选了感兴趣及常用部分 参考文献 https://docs.microsoft.com/en-us/ef/core/modeling/relationships One to Many Ma ...
- 关于记录log日志的几种方法
最近在记录日志的时候总结了几种方式: 1.使用log4j2记录 2.使用log4j记录 3.使用logback配置,记录前使用 private final Logger logger = Logge ...
- 使用sublimeserver启动本地服务器进行调试
最近在做前后端分离的项目,访问后台接口的时候会产生跨域问题,修改了相关配置解决了跨域问题,但是配置中只对开发环境进行了设置,没有设置生产环境,为了验证生产环境确实无法访问后台接口遂npm run bu ...
- symfony2学习笔记——控制器
//获取get过来的参数 $val = $request->query->get('aaa'); //获取post过来的参数 //$val = $request->request-& ...