qt-QtQuick笔记之常见项目类简要介绍
qt-QtQuick笔记之常见项目类简要介绍
code review!
文章目录
- qt-QtQuick笔记之常见项目类简要介绍
- 1.QQuickItem
- 2.QQuickRectangle
- 3.QQuickImage
- 4.QQuickText
- 5.QQuickBorderImage
- 6.QQuickTextInput
- 7.QQuickButton
- 8.QQuickSwitch
- 9.QQuickListView
- 10.QQuickGridView
- 11.QQuickPopup
- 12.QQuickFlickable
- 13.QQuickSlider
- 14.QQuickProgressBar
- 15.QQuickComboBox
- 16.QQuickToolBar
- 17.QQuickItemView
- 18.特殊自定义绘制控件: QQuickPaintedItem
- 19.汇总表格
Qt Quick 提供了多种 UI 项目类(
Item 类)来帮助开发者构建不同类型的用户界面元素。每个类都有独特的功能,能够灵活地定制应用的外观和行为。以下是一些常见的 Qt Quick 项目类的介绍,帮助你了解它们的用途和功能。
1.QQuickItem
- 简介:
QQuickItem是所有 Qt Quick 项目的基础类,提供了位置、大小、透明度等基础功能,但无法直接绘制内容。可以作为容器或自定义类的基类。 - 用途:作为基类或容器元素,用于自定义行为和属性。
2.QQuickRectangle
- 简介:表示一个矩形区域,常用来作为容器或视觉元素,支持背景颜色、边框、圆角等属性。
- 用途:用作基础矩形组件或自定义控件的基础。
Rectangle {width: 100height: 100color: "blue"
}
3.QQuickImage
- 简介:用于显示图像,支持加载本地文件、URL 或动态图像,可以控制缩放和平铺等属性。
- 用途:显示图标、背景图、照片等静态图像。
Image {source: "image.png"width: 100height: 100
}
4.QQuickText
- 简介:用于显示文本,支持字体、颜色、大小、对齐等样式设置。
- 用途:显示标签、按钮文本或任何文本内容。
Text {text: "Hello, World!"color: "black"font.pointSize: 24
}
5.QQuickBorderImage
- 简介:可以从图像中提取可伸缩的边框部分,适合用作容器或控件背景。
- 用途:用于背景或按钮等控件,支持可伸缩的边框和中心区域。
6.QQuickTextInput
- 简介:用于接收文本输入,支持键盘输入、文本编辑和光标控制。
- 用途:常用于文本框、搜索框等。
TextInput {width: 200placeholderText: "Enter your name"
}
7.QQuickButton
- 简介:标准按钮控件,支持点击、长按、启用/禁用等状态。
- 用途:创建按钮,常与文本或图标结合使用。
Button {text: "Click Me"onClicked: {console.log("Button clicked!")}
}
8.QQuickSwitch
- 简介:开关控件,用于切换布尔状态。
- 用途:用于二值选择,如“开启/关闭”功能。
Switch {onCheckedChanged: {console.log("Switch state: " + checked)}
}
9.QQuickListView
- 简介:支持滚动的列表视图,适用于动态数据展示,支持高效的项目显示和滚动。
- 用途:用于展示列表项,如联系人列表、新闻列表等。
ListView {width: 200height: 400model: ListModel {ListElement { name: "Item 1" }ListElement { name: "Item 2" }}delegate: Text {text: model.name}
}
10.QQuickGridView
- 简介:网格布局视图,用于按网格展示项目。
- 用途:常用于图标、照片库、文件管理器等展示。
11.QQuickPopup
- 简介:弹出控件,通常用于显示模态对话框或通知。
- 用途:弹出信息窗口或选择框。
12.QQuickFlickable
- 简介:支持滑动和滚动内容的控件,常作为列表、视图的基础。
- 用途:用于实现可以通过手势滚动的容器。
13.QQuickSlider
- 简介:滑动条控件,允许用户选择范围内的数值。
- 用途:用于控制音量、亮度等。
Slider {from: 0to: 100value: 50
}
14.QQuickProgressBar
- 简介:进度条控件,显示任务或进度的百分比。
- 用途:显示操作进度,如文件上传、下载等。
15.QQuickComboBox
- 简介:下拉列表控件,允许用户从选项中选择一个。
- 用途:用于选择框、菜单等。
ComboBox {model: ["Option 1", "Option 2", "Option 3"]
}
16.QQuickToolBar
- 简介:工具栏控件,通常用于显示操作按钮或菜单项。
- 用途:实现应用中的顶部或底部工具栏。
17.QQuickItemView
- 简介:基类,支持动态数据的可视化显示,作为
QQuickListView和QQuickGridView的基础类。 - 用途:数据驱动视图,显示数据集合。
18.特殊自定义绘制控件: QQuickPaintedItem
- 简介:继承自
QQuickItem,提供了自定义绘制的功能,可以通过重写paint()方法来绘制任意内容。 - 用途:用于自定义控件绘制,适用于图表、绘图应用等需要动态更新绘制的场景。
示例代码:
#include <QQuickPaintedItem>
#include <QPainter>class MyPaintedItem : public QQuickPaintedItem
{Q_OBJECTpublic:MyPaintedItem(QQuickItem *parent = nullptr) : QQuickPaintedItem(parent) {}void paint(QPainter *painter) override {painter->setBrush(Qt::red);painter->drawRect(0, 0, width(), height());}
};
在 QML 中使用:
import QtQuick 2.15
import QtQuick.Controls 2.15ApplicationWindow {visible: truewidth: 200height: 200MyPaintedItem {width: 100height: 100}
}
运行

19.汇总表格
| 类名 | 简介 | 用途 |
|---|---|---|
| QQuickItem | 基础项目类,提供基本位置、大小、透明度等功能 | 用于自定义行为和属性的基类 |
| QQuickRectangle | 矩形区域控件,支持背景颜色、边框、圆角等属性 | 用作矩形组件或自定义控件的基础 |
| QQuickImage | 显示图像,支持图像加载、缩放等 | 用于显示图标、背景图、照片等 |
| QQuickText | 显示文本,支持字体、颜色、大小、对齐等样式设置 | 显示文本内容,如标签、按钮文字等 |
| QQuickBorderImage | 从图像提取可伸缩的边框部分 | 用作容器或控件背景,支持可伸缩区域 |
| QQuickTextInput | 文本输入控件,支持键盘输入、文本编辑、光标控制 | 用于文本框、搜索框等 |
| QQuickButton | 标准按钮控件,支持点击、长按、启用/禁用状态 | 创建按钮控件 |
| QQuickSwitch | 开关控件,用于切换布尔状态 | 用于二值选择 |
| QQuickListView | 滚动列表视图,支持动态数据展示 | 展示联系人、新闻等列表 |
| QQuickGridView | 网格布局视图,按网格展示项目 | 图标、照片库、文件管理器等展示 |
| QQuickPopup | 弹出控件,显示模态对话框或通知 | 弹出信息窗口或选择框 |
| QQuickFlickable | 支持滑动和滚动内容的控件 | 实现滑动和滚动的容器 |
| QQuickSlider | 滑动条控件,选择范围内的数值 | 音量、亮度等控制 |
| QQuickProgressBar | 进度条控件,显示任务进度 | 显示操作进度 |
| QQuickComboBox | 下拉列表控件,选择一项 | 选择框、菜单等 |
| QQuickToolBar | 工具栏控件,显示操作按钮或菜单项 | 顶部或底部工具栏 |
| QQuickItemView | 数据驱动视图,支持动态数据可视化 | 显示数据集合 |
| QQuickPaintedItem | 自定义绘制项,提供绘制功能 | 用于自定义控件、图形或动画绘制 |
相关文章:
qt-QtQuick笔记之常见项目类简要介绍
qt-QtQuick笔记之常见项目类简要介绍 code review! 文章目录 qt-QtQuick笔记之常见项目类简要介绍1.QQuickItem2.QQuickRectangle3.QQuickImage4.QQuickText5.QQuickBorderImage6.QQuickTextInput7.QQuickButton8.QQuickSwitch9.QQuickListView10.QQuickGridView11.QQuickPopu…...
Continuous Batching 连续批处理
原始论文题目: Continuous Batching — ORCA: a distributed serving system for Transformer-based generative models 关键词: Continuous Batching, iteration-level scheduling, selective batching 1.迭代级调度(iteration-level scheduling) Orca系统又由几个关键…...
海外问卷调查渠道查如何设置:最佳实践+示例
随着经济全球化和一体化进程的加速,企业间的竞争日益加剧,为了获得更大的市场份额,对企业和品牌而言,了解受众群体的的需求、偏好和痛点才是走向成功的关键。而海外问卷调查才是获得受众群体痛点的关键,制作海外问卷调…...
把本地搭建的hexo博客部署到自己的服务器上
配置远程服务器的git 安装git 安装依赖工具包 yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel安装编译工具 yum install -y gcc perl-ExtUtils-MakeMaker package下载git,也可以去官网下载了传到服务器上 wget https://www.ke…...
初阶数据结构:链表(二)
目录 一、前言 二、带头双向循环链表 1.带头双向循环链表的结构 (1)什么是带头? (2)什么是双向呢? (3)那什么是循环呢? 2.带头双向循环链表的实现 (1)节点结构 (2…...
postgresql根据主键ID字段分批删除表数据
生产环境针对大表的处理相对比较麻烦。 方案1、直接truncate,可能会遇到系统卡主的情况,因为truncate的过程中会对表进行加锁,会导致数据不能正常的写入 方案2、创建一个同结构的表结构,rename旧表,不停业务rename表担…...
10.business english-global market
eco-friendly case study: 案例学习 At the workshop工作坊, they agreed to emphasize eco-friendliness,adapt messageing, and boost digital marketing to stand out globally. Our study shows that more people want eco-friendly products in different places.Looks …...
C 语言实现计算一年中指定日期是第几天 题】
引言 在编程的世界里,处理日期和时间相关的问题是非常常见的。比如在日历应用、任务管理系统、数据分析等场景中,经常需要计算某个日期在一年中是第几天。本文将详细介绍如何使用 C 语言来实现这一功能,通过分析代码的结构、逻辑以及可能存在…...
深入理解三高架构:高可用性、高性能、高扩展性的最佳实践
引言 在现代互联网环境下,随着用户规模和业务需求的快速增长,系统架构的设计变得尤为重要。为了确保系统能够在高负载和复杂场景下稳定运行,"三高架构"(高可用性、高性能、高扩展性)成为技术架构设计中的核…...
【反悔堆】力扣1642. 可以到达的最远建筑
给你一个整数数组 heights ,表示建筑物的高度。另有一些砖块 bricks 和梯子 ladders 。 你从建筑物 0 开始旅程,不断向后面的建筑物移动,期间可能会用到砖块或梯子。 当从建筑物 i 移动到建筑物 i1(下标 从 0 开始 )…...
关于使用Mybatis-plus的TableNameHandler动态表名处理器实现分表业务的详细介绍
引言 随着互联网应用的快速发展,数据量呈爆炸式增长。传统的单表设计在面对海量数据时显得力不从心,容易出现性能瓶颈、查询效率低下等问题。为了提高数据库的扩展性和响应速度,分表(Sharding)成为了一种常见的解决方案…...
docker 安装 redis 详解
在平常的开发工作中,我们经常会用到 redis,那么 docker 下应该如何安装 redis 呢?简单来说:第一步:拉取redis镜像;第二步:设置 redis.conf 配置文件;第三步:编写 docker-…...
56. 合并区间
【题目】:56. 合并区间 class Solution { public:vector<vector<int>> merge(vector<vector<int>>& intervals) {// 按照左端点排序sort(intervals.begin(), intervals.end(), [&](vector<int> lhs, vector<int> rhs)…...
BOM对象location与数组操作结合——查询串提取案例
BOM对象location与数组操作结合——查询串提取案例 前置知识 1. Location 对象 Location 对象是 JavaScript 提供的内置对象之一,它表示当前窗口或框架的 URL,并允许你通过它操作或获取 URL 的信息。可以通过 window.location 访问。 主要属性&#…...
Jetson Orin Nano Super之 onnxruntime 编译安装
Jetson Orin Nano Super之 onnxruntime 编译安装 1. 源由2. 步骤步骤一:安装3.26 cmake步骤二:下载代码步骤三:编译代码步骤四:找到安装包步骤五:安装whl包 3. 注意4. 参考资料 1. 源由 Build onnxruntime 1.19.2 fai…...
开发环境搭建-3:配置 nodejs 开发环境 (fnm+ node + pnpm)
在 WSL 环境中配置:WSL2 (2.3.26.0) Oracle Linux 8.7 官方镜像 node 官网:https://nodejs.org/zh-cn/download 点击【下载】,选择想要的 node 版本、操作系统、node 版本管理器、npm包管理器 根据下面代码提示依次执行对应代码即可 基本概…...
[SWPUCTF 2022 新生赛]js_sign
题目 查看页面源代码 <!DOCTYPE html> <html> <head><meta charset"utf-8"><style>body {background-color: rgb(255, 255, 255);}</style> </head> <body><input id"flag" /><button>Check…...
农业信息化的基本框架
农业信息化的主要研究内容 基于作物模型的相关研究 作物生长模拟模型以及模型评价、模型的应用作物模型应用,包括:作物生态系统过程、生产管理措施、区域作物产量评估与气候变化对产量影响预测、基于作物模型的决策支持系统 数据挖掘、知识工程及应用、管…...
OpenAI的真正对手?DeepSeek-R1如何用强化学习重构LLM能力边界——DeepSeek-R1论文精读
2025年1月20日,DeepSeek-R1 发布,并同步开源模型权重。截至目前,DeepSeek 发布的 iOS 应用甚至超越了 ChatGPT 的官方应用,直接登顶 AppStore。 DeepSeek-R1 一经发布,各种资讯已经铺天盖地,那就让我们一起…...
Vue 3 中的父子组件传值:详细示例与解析
在 Vue 3 中,父子组件之间的数据传递是一个常见的需求。父组件可以通过 props 将数据传递给子组件,而子组件可以通过 defineProps 接收这些数据。本文将详细介绍父子组件传值的使用方法,并通过优化后的代码示例演示如何实现。 1. 父子组件传值…...
告别内置ADC的烦恼:用ADS1119搞定STM32/DSP的高精度电压采样(附完整代码)
告别内置ADC的烦恼:用ADS1119搞定STM32/DSP的高精度电压采样(附完整代码) 在嵌入式系统开发中,电压采样是基础却至关重要的环节。许多工程师在使用STM32或DSP内置ADC时,常会遇到精度不足、抗干扰能力差、无法测量差分信…...
SAP KO88结算时,如何用BADI_FINS_ACDOC_POSTING_EVENTS把成本中心塞进自定义字段?
SAP KO88结算实战:通过BADI_FINS_ACDOC_POSTING_EVENTS实现成本中心到自定义字段的精准映射 在SAP工单结算(KO88)的复杂业务场景中,财务凭证的标准化字段往往无法满足企业多维度的分析需求。特别是当需要将特定成本中心信息映射到…...
别再手动算位宽了!Vivado FIR IP核的位宽计算逻辑与配置避坑指南
Vivado FIR IP核位宽计算实战:从黑盒解析到精准配置 在FPGA数字信号处理领域,FIR滤波器作为基础构建模块,其性能表现直接影响整个系统的信号处理质量。而位宽配置这个看似简单的参数,往往成为项目后期调试阶段的"隐形杀手&qu…...
MemPrivacy:面向端云智能体的隐私保护个性化记忆管理框架
之前文章介绍过:89.2%攻击成功率!腾讯、字节研究发现 OpenClaw Agent 存在可利用结构性漏洞 今天介绍一个 MemPrivacy 项目,来自 MemTensor、荣耀和同济大学的联合团队。 他们的研究让云端智能体能正常"记住你",但永远看…...
QMCFLAC2MP3终极指南:免费快速解锁QQ音乐格式限制
QMCFLAC2MP3终极指南:免费快速解锁QQ音乐格式限制 【免费下载链接】qmcflac2mp3 直接将qmcflac文件转换成mp3文件,突破QQ音乐的格式限制 项目地址: https://gitcode.com/gh_mirrors/qm/qmcflac2mp3 你是否曾经在QQ音乐下载了心爱的歌曲࿰…...
Boss直聘职位数据自动化采集:Python爬虫架构设计与工程实践
1. 项目概述与核心价值最近在技术社区里,看到不少朋友在讨论一个叫longsizhuo/BossZhiPin_Job_Search的项目。光看名字,你大概就能猜到,这是一个跟“Boss直聘”和“职位搜索”相关的自动化工具。作为一个在招聘数据分析和自动化领域摸爬滚打了…...
C++定时器避坑指南:线程安全、资源泄漏与时间轮参数怎么调?一次讲清楚
C定时器避坑指南:线程安全、资源泄漏与时间轮参数调优实战 在分布式系统和高并发场景中,定时器如同系统的心跳机制,其稳定性直接决定服务可靠性。去年某电商平台大促期间,由于定时任务堆积导致的雪崩效应,造成近千万损…...
终极显卡调校指南:如何用NVIDIA Profile Inspector释放游戏性能
终极显卡调校指南:如何用NVIDIA Profile Inspector释放游戏性能 【免费下载链接】nvidiaProfileInspector 项目地址: https://gitcode.com/gh_mirrors/nv/nvidiaProfileInspector NVIDIA Profile Inspector是一款专为NVIDIA显卡用户设计的免费优化工具&…...
AI驱动代码审查:Cursor与Git工作流融合实践
1. 项目概述:当AI代码助手遇上代码审查最近在GitHub上看到一个挺有意思的项目,叫guinacio/cursor-review。光看名字,你可能会觉得这又是一个普通的代码审查工具,但点进去仔细研究,你会发现它的核心思路非常巧妙&#x…...
多维子集和问题:NP难问题的算法与应用解析
1. 多维子集和问题概述多维子集和问题(Multi-dimensional Subset Sum Problem)是计算复杂度理论中的经典NP难问题。简单来说,它要求在给定的n维向量集合中,找出一个子集,使得该子集中所有向量在每一维上的和恰好等于目标向量对应的分量。这个…...
