当前位置: 首页 > news >正文

QML Item和Rectangle详解

1.Item和Rectangle

Item类型是Qt Quick中所有可视项的基本类型。

Qt Quick中的所有可视项都继承Item。尽管Item对象没有视觉外观,但它定义了视觉项中常见的所有属性,例如x和y位置、宽度和高度、锚定和键处理支持。

Rectangle继承自Item,多了下面几种属性:

antialiasing : bool        //抗锯齿
border                     //边框
border.width : int
border.color : color
color : color              //颜色
gradient : Gradient        //渐变
radius : real              //圆角半径

2.常用属性

与位置大小相关:

width:组件的宽度

height:组件的高度

x:组件的x位置坐标,如果有嵌套,则子类是相对于父类的坐标,定义屏幕左上角为(0,0),X轴向右为正,Y向下为正

y:组件的y位置坐标,如果有嵌套,则子类是相对于父类的坐标,定义屏幕左上角为(0,0),X轴向右为正,Y向下为正

implicitHeight:定义项目的隐式高度,一般用在未显示指定项目宽高的时候,有些项目是有隐式宽高的

implicitWidth:定义项目的隐式宽度,一般用在未显示指定项目宽高的时候,有些项目是有隐式宽高的

z:项目的z序,z序越大,表示项目越顶层

示例:下图可见r2在r1的上层,将r1给盖住了。如果需要将r1置为上层,只需添加z属性z:1。

Window {visible: truewidth: 400height: 400title: qsTr("Hello World")Rectangle{width: 50height: 50id:b1objectName:"r1"x:0y:0//z:1color:"red"}Rectangle{width: 50height: 50id:b2objectName:"r2"x:30y:20color:"yellow"}
}

与锚定布局相关的布局属性

anchors.top:锚定项目的顶部,一般让其等于父亲的某个位置

anchors.left:锚定项目的左部,一般让其等于父亲的某个位置

anchors.bottom:锚定项目的底部,一般让其等于父亲的某个位置

anchors.right:锚定项目的右部,一般让其等于父亲的某个位置

anchor.XXXMargin:XXX可以由以上几个替代,表示项目的外边距,与qss盒模型类似

anchor.fill / anchor.centerIn:以充满父类的方式布局/居中显示于父组件

anchors.horizontalCenter/anchor.verticalCenter:组件的水平中心位置和垂直位置,可以使用offset来进行细微调整

示例1:label的水平中心位置位于pic的水平中心位置,label的顶部位于pic的底部,label的顶部偏移量为5。

示例2:label的left位于pic的右边,左偏移量为5。

 

 

其他一些属性

antialiasing : bool 是否抗锯齿,选择抗锯齿会增加内存

children : list<Item> 当前项目的所有子项列表

clip : bool 默认为false,当为true时,项目会裁切自己的绘画

focus : bool 是否获得焦点,获得焦点之后的项目可以捕获鼠标和按键事件

opacity :real 当前项目的透明度,取值为[0.0,1.0]

parent :Item 当前组件的父组件

rotation:real 当前组件的旋转属性

scale:real 当前组件的缩放属性

smooth : bool是否做平滑处理

visible:bool 当前组件是否可视

示例:放大和旋转。

Window {visible: truewidth: 400height: 400title: qsTr("Hello World")Rectangle{width: 50height: 50id:r1objectName:"r1"x:0y:0z:1color:"red"}Rectangle{width: 50height: 50id:r2objectName:"r2"x:200y:50color:"yellow"scale: 2    // 长和宽放大一倍rotation: 45    //旋转45度}
}


 

示例:设置圆角

    Rectangle{width: 50height: 50id:r2objectName:"r2"x:200y:50color:"yellow"scale: 2    // 长和宽放大一倍rotation: 45    //旋转45度radius:10   //设置 圆角半径}

 示例:设置渐变色

    Rectangle{width: 50height: 50id:r2objectName:"r2"x:200y:50scale: 2    // 长和宽放大一倍rotation: 45    //旋转45度radius:10   //设置 圆角半径gradient: Gradient {GradientStop { position: 0.0; color: "lightsteelblue" }GradientStop { position: 1.0; color: "blue" }}}

 3.自定义Rectangle

创建一个WRectangle.qml,内容如下:可以修改渐变色的开始和结束颜色

import QtQuick 2.0Rectangle {id:rectproperty string startColor: "lightsteelblue"property string endColor: "blue"width: 100height: 100rotation: 45    //旋转45度radius:10   //设置 圆角半径gradient: Gradient {GradientStop { position: 0.0; color: startColor }GradientStop { position: 1.0; color: endColor }}
}

使用:

import QtQuick 2.6
import QtQuick.Window 2.2
import QtQuick.Controls 2.1Window {visible: truewidth: 400height: 400title: qsTr("Hello World")WRectangle{x:100y:100startColor:"red"endColor:"yellow"}WRectangle{x:200y:100startColor:"black"endColor:"red"}
}

运行截图:

相关文章:

QML Item和Rectangle详解

1.Item和Rectangle Item类型是Qt Quick中所有可视项的基本类型。 Qt Quick中的所有可视项都继承Item。尽管Item对象没有视觉外观&#xff0c;但它定义了视觉项中常见的所有属性&#xff0c;例如x和y位置、宽度和高度、锚定和键处理支持。 Rectangle继承自Item&#xff0c;多…...

常见前端基础面试题(HTML,CSS,JS)(六)

GET 和 POST 的区别 从 http 协议的角度来说&#xff0c;GET 和 POST 它们都只是请求行中的第一个单词&#xff0c;除了语义不同&#xff0c;其实没有本质的区别。 之所以在实际开发中会产生各种区别&#xff0c;主要是因为浏览器的默认行为造成的。 受浏览器的影响&#xf…...

深度学习 李沐报错

3.6. softmax回归的从零开始实现 — 动手学深度学习 2.0.0 documentation softmax从0开始实现 函数执行需要加main指定 改成这样 if __name__"__main__":print(evaluate_accuracy(net, test_iter)) 不然会这样出错 RuntimeError: An attempt has been m…...

【JAVA程序设计】(C00104)基于Springboot的家庭理财管理系统——有文档

基于Springboot的家庭理财管理系统项目简介项目获取开发环境项目技术运行截图运行视频项目简介 基于Springboot开发的家庭理财管理系统设计与实现共分为三个角色&#xff1a;系统管理员、家庭管理员、家庭用户 管理员角色包含以下功能&#xff1a; 用户管理、修改密码、角色管…...

【第五章 AOP概述,底层原理,AOP术语,切入点表达式,AOP操作(基于注解方式,基于xml配置文件)】

第五章 AOP概述&#xff0c;底层原理&#xff0c;AOP术语&#xff0c;切入点表达式&#xff0c;AOP操作&#xff08;基于注解方式&#xff0c;基于xml配置文件&#xff09; 1.AOP概述&#xff1a; &#xff08;1&#xff09;什么是AOP&#xff1a; ①面向切面编程&#xff08;…...

面试官: 你知道 JWT、JWE、JWS 、JWK嘛?

想起了 之前做过的 很多 登录授权 的项目 它相比原先的session、cookie来说&#xff0c;更快更安全&#xff0c;跨域也不再是问题&#xff0c;更关键的是更加优雅 &#xff0c;所以今天总结了一篇文章来介绍他 JWT 指JSON Web Token&#xff0c;如果在项目中通过 jjwt 来支持 J…...

基于企业微信应用消息的每日早安推送

基于企业微信应用消息的每日早安推送 第一步&#xff1a;注册企业微信 企业微信注册地址&#xff1a;https://work.weixin.qq.com/wework_admin/register_wx 按照正常流程填写信息即可&#xff0c;个人也可以注册企业微信&#xff0c;不需要公司 注册完成后&#xff0c;登录…...

【数字IC基础】黑盒验证、白盒验证、 灰盒验证

文章目录 一、黑盒验证二、白盒验证三、灰盒验证一、黑盒验证 1、黑盒验证:大多数基于仿真的验证环境都是黑盒验证;2、不需要知道设计的内部结构和特性,只需要在输入端口打激励,观察输出即可;3、验证工程师学习设计的规格,然后编写验证环境中的 drivers, monitors, check…...

管理的本质是达成目标

“没有目标&#xff0c;其实就没有管理学存在的意义。要有效地使用管理学的智慧&#xff0c;首先要建立清晰的目标。” - 《宁向东的管理学课》 起源 最近开始刷很久之前就在得到上买了的已经起灰了的课程&#xff0c;看到这句话觉得很有道理。 思考 这里面有一个很重要的词…...

【数字IC基础】IC(Integrated Circuit,集成电路)常用缩写

文章目录 1、集成电路:2、数字IC设计相关步骤:3、数字设计相关概念:4、验证相关:5、语言类:6、IC设计相关工具:7、存储器相关:8、总线协议类:9、文件格式类:10、标准和规范:11、其它:1、集成电路: 缩写全称中文翻译LSILarge-scale intergrated circuit大规模集成电…...

JavaScript 高级1 :面向对象

JavaScript 高级1 &#xff1a;面向对象 Date: January 16, 2023 Text: 面向对象、ES6中类和对象、类的继承、面向对象案例 目标&#xff1a; 能够说出什么是面向对象 能够说出类和对象的关系 能够使用 class 创建自定义类型 能够说出什么是继承 面向对象编程介绍 面向过…...

C语言结构体对齐

1. 结构体对齐 要点 变量只能存储在他的长度的整数倍地址上结构体整体对齐跟他的最长的字段整数倍对齐 栗子1 struct Example1 {char a; //1个字节int c; //4个字节short b; //2个字节 };std::cout << sizeof(Example1 ) << std::endl; // 12 std::cout &…...

Bootstrap系列之导航

Bootstrap导航 可以在 ul 元素上添加 .nav类&#xff0c;在每个 li 选项上添加 .nav-item 类&#xff0c;在每个链接上添加 .nav-link 类: 基本的导航 <div class"container mt-3"><h2>导航</h2><p>简单的水平导航:</p><ul class&…...

Java EE|TCP/IP协议栈之应用层协议DNS详解

文章目录一、对DNS的感性认识简介特点一些常见疑问二、DNSDNS域名结构域名的分级三、域名服务器四、域名解析过程参考一、对DNS的感性认识 简介 DNS&#xff0c;即Domain Name System,是域名系统的简称。它是Internet上解决网上机器命名的一种系统。 TCP/IP中的IP地址是由四…...

【MyBatis】作用域生命周期(四)

&#x1f697;MyBatis学习第四站~ &#x1f6a9;起始站&#xff1a;MyBatis概述&环境搭建(一) &#x1f6a9;本文已收录至专栏&#xff1a;数据库学习之旅 &#x1f44d;希望您能有所收获 一.引入 为了使用方便&#xff0c;我们经常能看到各种教程都将MyBatis抽离为工具类…...

腾讯一面—Android 系统启动流程详解

正文AMS 是 Android 中最核心的服务之一&#xff0c;主要负责系统中四大组件的启动、切换、调度及应用进程的管理和调度等工作&#xff0c;其职责与操作系统中的进程管理和调度模块相类似&#xff0c;它本身也是一个 Binder 的实现类&#xff0c;应用进程能通过 Binder 机制调用…...

【Python知识点桂电版】02组合数据类型

一、序列序列简介序列是指一种包含多项数据的数据结构&#xff0c;分为不可变序列和可变序列。可变序列可修改序列内的元素如列表&#xff0c;二不可变序列一旦建立就不能修改其中的元素&#xff0c;字符串和元组属于不可变序列。列表和元组的创建列表&#xff1a;列表名 [元素…...

LeetCode100_100. 相同的树

LeetCode100_100. 相同的树 一、描述 给你两棵二叉树的根节点 p 和 q &#xff0c;编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同&#xff0c;并且节点具有相同的值&#xff0c;则认为它们是相同的。 示例 1&#xff1a; 输入&#xff1a;p [1,2,3], q […...

javaEE 初阶 — 网络层中 IP 协议 的报文结构

文章目录IP 协议报文4位版本号4位首部长度8位服务类型16位总长度&#xff08;字节数&#xff09;8位生存时间&#xff08;TTL&#xff09;与 8位协议16位首部校验和32位源 IP 地址与32位目标 IP 地址动态分配的 IP 地址NAT 网络地址转换IPv6IP 协议报文 4位版本号 这里的 IP 协…...

iOS swift UICollectionView

文章目录1.纯代码自定义UICollectionViewCell2.禁止滑动&#xff08;弹簧效果&#xff09;3.UICollectionView的长按拖动2.在一个控制器中放两个UICollectionView或者UITableView,代理方法要怎么写1.纯代码自定义UICollectionViewCell import UIKitclass NewDeviceBottomColle…...

计算机三级数据库 填空题汇总

计算机三级 数据库 IDEF0需求建模方法由箭头和&#xff08;活动/方框/矩形&#xff09;两种元素构成。、从安全性角度考虑&#xff0c;防火墙技术是用来保证数据库应用系统的&#xff08;网络&#xff09;环境安全的。在UML的状态机图中&#xff0c;状态之间的转移是由&#x…...

【Java学习】初识Java

JavaSEJava初识1. Java简介2.Java环境的安装与配置3. 开发第一个Java程序Java初识 学前疑问&#xff1a;&#xff08;带着疑问去学习&#xff0c;在学习中自行探索答案&#xff09; Java是什么&#xff1f;能做什么&#xff1f;发展前景如何&#xff1f;需要学习哪些内容&…...

LabVIEW网络服务安全

LabVIEW网络服务安全如何保护Web服务&#xff1f;当许多人考虑安全性时&#xff0c;他们会考虑加密、用户ID和密码。用户ID和密码用于授权&#xff08;告诉目标谁在发出请求&#xff09;。加密保护客户端和服务器之间的通信流量&#xff0c;以便未经授权的个人无法拦截和读取发…...

基于MaixBit(K210芯片)的图像识别猜拳手势博弈装置

本文介绍了一种基于嵌入式平台开发的图像识别部署装置&#xff0c;其主要功能包括实现机器与人的“猜拳博弈”&#xff0c;其组成分为三个部分&#xff1a;手势检测数据集图像识别模型训练模型格式部署maixbit开发板部署手势检测数据集&#xff1a;本项目的数据集包括三种标签&…...

leetcode 41~50 学习经历

leetcode 41~50 学习经历41. 缺失的第一个正数42. 接雨水43. 字符串相乘44. 通配符匹配45. 跳跃游戏 II46. 全排列47. 全排列 II48. 旋转图像49. 字母异位词分组50. Pow(x, n)小结41. 缺失的第一个正数 给你一个未排序的整数数组 nums &#xff0c;请你找出其中没有出现的最小的…...

SQL注入原理及漏洞利用(入门级)

文章目录一、什么是SQL注入漏洞&#xff1f;二、 SQL查询语句三、SQL注入分类数字型&#xff08;整型&#xff09;注入字符型注入搜索型注入四、SQL注入漏洞形成原因一、什么是SQL注入漏洞&#xff1f; 攻击者利用Web应用程序对用户输入验证上的疏忽&#xff0c;在输入的数据中…...

2023/2/26 Vue学习笔记 配置代理解决跨域[CORS ]的问题

利用vue的脚手架巧妙的解决ajax跨域的问题 1 我们首先利用springboot服务搭建 注意这里引出了跨域[CORS ]的问题: Access to XMLHttpRequest at http://localhost:5000/getUserInfo from origin http://localhost:8080 has been blocked by CORS policy: No Access-Control-A…...

算法练习--深拷贝与浅拷贝

&#x1f380;个人主页&#xff1a;努力学习前端知识的小羊 感谢你们的支持&#xff1a;收藏&#x1f384; 点赞&#x1f36c; 加关注&#x1fa90; 文章目录算法地址算法题解分析深拷贝与浅拷贝在练习算法时&#xff0c;遇到了深拷贝与浅拷贝的问题&#xff0c;于是就了解了一…...

Wireshark “偷窥”浏览器与服务器三次握手

本文使用的是Wireshark 4.0.3, Java 11 编写简易服务器&#xff0c;客户端使用Chrome浏览器移动端开发或是前、后端开发又或是高大上的云计算都脱离不了网络&#xff0c;离开了网络的计算机就是一个孤岛&#xff0c;快速上手开发、背面试八股文固然有些急功近利&#xff0c;但确…...

基于stm32温湿度采集平台开发

基于stm32温湿度采集平台开发这里记录一下自己以前课设报告&#xff0c;但是论文中图片和文字、公式太多了&#xff0c;懒得粘贴了&#xff0c;需要完整的可q我963_160_156&#xff0c;也可在微信公众号 *高级嵌入式软件* 里回复 *温湿度* 查看完整版文章摘 要关键词第一章 绪论…...

设计网站登录框ps怎么做/李飞seo

问题导读&#xff1a;1.Flume的存在些什么问题&#xff1f;2.基于开源的Flume美团增加了哪些功能&#xff1f;3.Flume系统如何调优&#xff1f;在《基于Flume的美团日志收集系统(一)架构和设计》中&#xff0c;我们详述了基于Flume的美团日志收集系统的架构设计&#xff0c;以及…...

西安关键词seo公司/北京外贸网站优化

本节书摘来自异步社区《Adobe After Effects CS6中文版经典教程》一书中的第1课&#xff0c;第1.7节&#xff0c;作者 【美】Adobe公司 &#xff0c;译者 张明&#xff0c;更多章节内容可以访问云栖社区“异步社区”公众号查看。 1.7 After Effects性能优化 对After Effects的…...

网站制作什么做/搜索引擎优化方法有哪些

Transactional(readOnly false, rollbackFor BusinessException.class) 设置下这个注解&#xff0c;处理下事务即可。...

建设工程安全监督备案网站/如何弄一个自己的网站

本文由Jamie Shields和Wern Ancheta进行了同行评审。 感谢所有SitePoint的同行评审人员使SitePoint内容达到最佳状态&#xff01; SoundCloud提供了一个API&#xff0c;使开发人员可以获取他们想要的几乎所有数据。 但是它的用法可能会引起混淆&#xff0c;尤其是对于初学者而言…...

怎样做某个网站有更新的提醒/官网seo优化找哪家做

TP5字段值加1 原始的办法setInc && setDec原始的办法 // 先查询原本的数值$num db(table)->where(id, 1)->value(num);// 再将数值1 update回去db(table)->update([id>1, num>$num1]);setInc && setDec // 直接使用 setInc 或 setDecdb(table…...

网站设计费用志/网络营销的几种模式

域名泛解析什么意思 在域名前添加任何子域名&#xff0c;均可访问到所指向的网站。也就是客户的域名yfi6.com之下所设的*.yfi6.com全部域名均可访问。 域名泛解析怎么设置 泛域名解析是指将*.域名解析到同一IP。 泛域名解析和域名解析有何不同&#xff1f; 泛域名解析是指&a…...