QML学习笔记

本文详细介绍了QML语言中的模块导入、对象声明、数学函数、时间戳处理、Item和Rectangle组件特性,以及Text元素的丰富选项,展示了在构建UI时的重要技术细节。
摘要由CSDN通过智能技术生成

1. 语法

1.1 导入模块

1.1.1 已注册类型的版本化命名空间

1.1.2 包含作为 QML 文档的类型定义的相对目录

1.1.3 JavaScript 文件

import QtQuick 2.0
import QtQuick.LocalStorage 2.0 as Database
import "../privateComponents"
import "somefile.js" as Script

1.2 对象声明

对象类型名称 + 一组大括号,所有的属性与子对象都在这组大括号中进行说明

1.3 子对象

数量不限,可通过嵌套的方式进行子对象的声明

2. Math

  • Math.max() —— 最大值
  • Math.min() —— 最小值
  • Math.ceil() —— 向上舍入
  • Math.floor()—— 向下舍入
  • Math.round() —— 四舍五入
  • Math.random() —— 随机数

3. 时间戳打印

Qt.formatDateTime(new Date(), "yyyy-MM-dd hh:mm:ss ddd"))

4. Item

  • Chilidren —— 管理界面元素
  • Resource —— 管理不可见元素
  • data(默认属性) —— 数组内的可视元素自动当做children,不可见元素当做resource
  • Visible —— 控制是否可见,默认为true

5. Rectangle

  • antialiasing —— 抗锯齿开关,默认使用圆角,默认开启
  • border.color —— 边框色
  • border.width —— 边框宽度
  • color —— 背景填充
  • radius —— 圆角半径,默认为0
  • gradient —— 渐变

6. Text

  • antialiasing —— 抗锯齿开关,默认开启
  • clip —— 文本裁剪,默认 Text 随字符串长度自动调整宽度;当 clip 为
    true,超过 Text 元素 width 将不会显示;若 clip 为 false,text 则会超出 Text 区域显示
  • color —— 文本颜色
  • elide —— 显示设置宽度时,省略过长字符,支持省略号显示在字符串的左、中、右三个位置
  • font.bold —— 粗体
  • font.capitalization—— 设置英文大小写,支持默认、全大写、全小写、分词首字母大写
  • font.family —— 字体名称
  • font.italic —— 斜体
  • font.letterSpacing —— 字符间距
  • font.pixelSize —— 字体像素大小
  • font.pointSize —— 字体大小,与设备无关
  • font.strikeout —— 删除线
  • font.underline —— 下划线
  • font.weight —— 字重
  • font.wordSpacing —— 单词间距
  • fontSizeMode —— 字体大小模式
    • Text.FixedSize —— 默认大小,即 font.pixelSize / font.pointSize 的大小
    • Text.HorizontalFit —— 根据 width 调整最大字号
    • Text.VerticalFit —— 根据 height 调整最大字号
    • Text.Fit —— 根据宽高调整最大字号
    • minimumPointSize / minimumPixelSize —— 指定最小边界
    • font.pointSize / font.pixelSize —— 指定最大边界
  • horizontalAlignment —— 水平对齐方式
  • hoveredLink —— 悬浮链接
  • lineCount —— 行数,富文本(RTF格式)不支持
  • renderType —— 默认Qt渲染,可选Native渲染,可能出现锯齿
  • renderTypeQuality —— 渲染质量 ,大号字体需关注
  • style —— 文本样式
  • text ——文本内容
  • verticalAlignment —— 垂直对齐方式
  • wrapMode —— 设置 文本换行为文本项的宽度
    • NoWrap —— 不换行
    • WordWrap —— 就在单词边界上进行换行
    • WrapAnywhere —— 在任意点换行
    • Wrap —— 如果可能,在单词边界处进行换行;否则,它将出现在行上的适当位置,甚至在单词的中间
  • Item —— 项目定位器
  • Column —— 将子项放置在列中
  • Flow —— 并排放置子项,并根据需要进行包装
  • Grid —— 将子项定位在网格中
  • LayoutMirroring —— 用于镜像布局行为
  • Positioner —— 提供附加属性,包含有关项目在定位器中的位置的详细信息
  • Row —— 将子项排成一行
  • Component —— 在qml文件中实现组建的子组件,无需新建qml文件
  • Loader —— 用于动态加载 QML 组建
  • 21
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值