qml之Control类型布局讲解,padding属性和Inset属性细讲

1、Control布局图

在这里插入图片描述

2、如何理解?

*padding*Inset参数如何理解呢?

//main.qml
import QtQuick 2.0
import QtQuick.Controls 2.12
import QtQuick.Layouts 1.12
import QtQuick.Controls 1.4
import QtQml 2.12ApplicationWindow {id: windowvisible: truewidth: 500height: 320Frame {id: frameanchors.fill: parentanchors.margins: 40background: Rectangle {color: "green"border {color: "blue"width: 2}}contentItem: Rectangle {id: rectanglecolor: "red"Text {text: "ContentItem"anchors.verticalCenter: parent.verticalCenteranchors.horizontalCenter: parent.horizontalCenterfont {pointSize: 25bold: true}}}Component.onCompleted: {console.log(frame.leftPadding, frame.rightPadding,frame.topPadding, frame.bottomPadding)console.log(frame.leftInset, frame.rightInset, frame.topInset,frame.bottomInset)}}
}

我们以Frame来讲解,因为它也是属于Control类型的。
上述画了一个带有蓝色边框的Frame,如下图所示:
在这里插入图片描述

并且打印了*padding*Inset系列的初始值,,打印结果如下:

在这里插入图片描述

也就是,*padding系列的默认值是12,*Inset系列的默认值是0。

3、padding理解

请添加图片描述

上述中,我对padding进行了动态改变,,padding实际上就是控件ContentItem内容到控件Frame边框的距离。

在这里插入图片描述

4、Inset理解

//main.qml
import QtQuick 2.0
import QtQuick.Controls 2.12
import QtQuick.Layouts 1.12
import QtQuick.Controls 1.4
import QtQml 2.12ApplicationWindow {id: windowvisible: truewidth: 500height: 320Frame {id: frameanchors.fill: parentanchors.margins: 40background: Rectangle {color: "green"border {color: "blue"width: 2}}padding: 40contentItem: Rectangle {id: rectanglecolor: "red"Text {text: "ContentItem"anchors.verticalCenter: parent.verticalCenteranchors.horizontalCenter: parent.horizontalCenterfont {pointSize: 25bold: true}}}Component.onCompleted: {console.log(frame.leftPadding, frame.rightPadding,frame.topPadding, frame.bottomPadding)console.log(frame.leftInset, frame.rightInset, frame.topInset,frame.bottomInset)}}
}

在这里插入图片描述

接着添加

 leftInset: 40
{// ...padding: 40leftInset: 40		// 新添加的// ...
}

此时运行如下图所示:
在这里插入图片描述

也即是说 *Inset裁剪的对象是Frame

继续加大leftInset的值,假如设置为60,运行如下图所示:
在这里插入图片描述
可以看出,其只是针对Frame(Control)整个背景来说的,,
并不会裁剪ContentItem内容

假如需要值剩下ContentItem,只需将所有的Inset值设置为与padding值想通过即可。
在这里插入图片描述
在这里插入图片描述

5、利用Inset解决一个Page头部的问题

qml中解决Page控件头部元素Margin不生效的问题

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

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

相关文章

Leetcode - 周赛384

目录 一,3033. 修改矩阵 二,3035. 回文字符串的最大数量 三,3036. 匹配模式数组的子数组数目 II 一,3033. 修改矩阵 这道题直接暴力求解,先算出每一列的最大值,再将所有为-1的区域替换成该列的最大值&am…

算法刷题:无重复字符的最长字串

无重复字符的最长字串 .题目链接题目详情算法原理题目解析滑动窗口定义指针进窗口判断出窗口更新结果 我的答案 . 题目链接 无重复字符的最长字串 题目详情 算法原理 题目解析 首先,为了使字符串遍历的更加方便,我们选择将字符串转换为数组 题目要求子串中不能有重复的字符…

知识图谱:py2neo将csv文件导入neo4j

文章目录 安装py2neo创建节点-连线关系图导入csv文件删除重复节点并连接边 安装py2neo 安装python中的neo4j操作库:pip install py2neo 安装py2neo后我们可以使用其中的函数对neo4j进行操作。 图数据库Neo4j中最重要的就是结点和边(关系)&a…

隐函数的求导【高数笔记】

1. 什么是隐函数? 2. 隐函数的做题步骤? 3. 隐函数中的复合函数求解法,与求导中复合函数求解法有什么不同? 4. 隐函数求导的过程中需要注意什么?

【Linux网络编程五】Tcp套接字编程(四个版本服务器编写)

【Linux网络编程五】Tcp套接字编程(四个版本服务器编写) [Tcp套接字编程]一.服务器端进程:1.创建套接字2.绑定网络信息3.设置监听状态4.获取新连接5.根据新连接进行通信 二.客户端进程:1.创建套接字2.连接服务器套接字3.连接成功后进行通信 三…

深度学习的基本原理和算法

深度学习的基本原理、算法和神经网络的基本概念是人工智能领域中非常重要的部分,下面我将分别深入解释这些内容。 深度学习的基本原理 深度学习的基本原理在于使用深层神经网络来模拟人脑神经元的连接方式,从而实现对复杂数据的分析和处理。它依赖于大…

爱上JVM——常见问题(一):JVM组成

1 JVM组成 1.1 JVM由那些部分组成,运行流程是什么? 难易程度:☆☆☆ 出现频率:☆☆☆☆ JVM是什么 Java Virtual Machine Java程序的运行环境(java二进制字节码的运行环境) 好处: 一次编写&…

mysql存储范式简记

范式与反范式,范式追求不同表中的不重复存储,反范式可以重复存储一张表里。每张表一定要有一个主键,自增主键只推荐用在非核心业,核心业务表推荐使用 UUID 或业务自定义主键,可以通过 JSON 数据类型进行反范式设计。 …

第三十三回 镇三山大闹青州道 霹雳火夜走瓦砾场-python分割字符串

黄信和刘知寨押解宋江和花荣向青州走,碰到了燕顺等三人来劫囚车,黄信逃走了,刘知寨被抓住,被花荣一刀杀了。 黄信把情况报给青州知府,派来了青州兵马秦统制,人称霹雳火的秦明。秦明与花荣打,花…

计算机二级之sql语言的学习(数据模型—概念模型)

概念模型 含义: 概念模型用于信息世界(作用对象)的建模,是实现现实世界到信息世界(所以万丈高楼平地起,不断地学习相关的基础知识,保持不断地重复才能掌握最为基础的基础知识)的概念抽象&#…

c++STL系列——(十三)总结

目录 引言 正文 结语 引言 经过一段时间的学习和探索,我的C STL系列博客终于迎来了结束的时刻。在这个系列中,我们深入了解了C标准模板库(STL)的核心组件、常用容器和算法,并探讨了它们的特性和适用场景。通过这一…

数据结构链表力扣例题AC(2)——代码以及思路记录

206. 反转链表 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 AC方法1 struct ListNode* reverseList(struct ListNode* head) {if(head NULL)return NULL;struct ListNode* n1, *n2, *n3;n1 NULL;n2 head;n3 head->next;while…

错误处理 ssh登陆提示:server unexpectedly closed network connection

干了一天的活,因为对etc做权限操作,导致ssh不能连接,差点奔溃 记这次处理经验 因修改/etc/ssh权限导致的ssh不能连接异常解决方法 现象: $ssh XXX192.168.5.21 出现以下问题 Read from socket failed: Connectionreset by peer …

QtApplets-线程池

QtApplets-线程池 ​ 今天咱们稍微看下Qt的线程池。QThreadPool,浅浅搞一下。 文章目录 QtApplets-线程池QThreadPoolQThreadPool 与 QThread 区别替代方案Qt Concurrent QThreadPool 与 Qt Concurrent 区别Demo运行效果 ☞ 源码 关键字: Qt、QRunnable…

leetcode hot100不同路径Ⅱ

本题和之前做的不同路径类似,区别是本题中加入了障碍,遇到障碍之后需要避开(注意,这里依旧是只能向下向右移动),那么也就是说,有障碍的点是到达不了的,并且 ,我在初始化的…

《随机过程及应用》

《随机过程及应用》笔记整理 随机过程及应用学习笔记(一)概率论(概要)-CSDN博客 随机过程及应用学习笔记(二)随机过程的基本概念-CSDN博客 随机过程及应用学习笔记(三)几种重要的…

OJ_最大逆序差

题目 给定一个数组&#xff0c;编写一个算法找出这个数组中最大的逆序差。逆序差就是i<j时&#xff0c;a[j]-a[i]的值 c语言实现 #include <stdio.h> #include <limits.h> // 包含INT_MIN定义 int maxReverseDifference(int arr[], int size) { if (size…

Gitee入门之工具的安装

一、gitee是什么&#xff1f; Gitee&#xff08;码云&#xff09;是由开源中国社区在2013年推出的一个基于Git的代码托管平台&#xff0c;它提供中国本土化的代码托管服务。它旨在为个人、团队和企业提供稳定、高效、安全的云端软件开发协作平台&#xff0c;具备代码质量分析、…

力扣1732. 找到最高海拔(前缀和)

Problem: 1732. 找到最高海拔 文章目录 题目描述思路及解法复杂度Code 题目描述 思路及解法 1.求取数组gain的大小 n n n; 2.定义一个大小为 n 1 n 1 n1的数组preSum; 3.先求取前 n n n个元素的前缀和&#xff0c;再最后单独处理preSum[n];其中preSum[n] preSum[n - 1] gai…

网络安全最典型基础靶场-DVWA-本地搭建与初始化

写在前面&#xff1a; 之前也打过这个 DVWA 靶场&#xff0c;但是是在虚拟机环境下的一个小块分区靶场&#xff1b; 本篇博客主要介绍在本地搭建 DVWA 靶场以及靶场的初始化&#xff0c;后续会陆续更新通关教程。 由于我们是在本地搭建&#xff0c;则需要基于你已经装好 phpstu…