1.2 QT随手简记(二)

news2025/3/18 18:42:59

QT学习篇2

一、QT学习方法

1. QT查询与学习资源

  • QT助手:学会使用QT的助手和上网查询,掌握API文档的查询与使用。
  • QT设计师界面:通过图形界面进行组件的拖拽布局,所见即所得。

2. QT设计师界面操作

  • 跳转与代码生成:双击.ui文件跳转到设计师界面,自动生成XML和C++代码。
  • 组件使用:拖拽组件到窗口,复制组件,设置属性。

3. 组件与类名对应规律

  • Display Widgets:如Label对应QLabel
  • Input Widgets:如Line Edit对应QLineEdit
  • Buttons:如Push Button对应QPushButton

二、QT界面设计

1. 样式设计

  • 资源文件:存放素材如图片、音频、视频。
  • QSS语句:用于界面美观设计,如设置背景色、图片等。

2. 登录界面实现

  • 代码实现:通过编写代码实现登录界面的逻辑功能。

三、QT基础组件与字符串处理

1. 组件属性设置

  • 通用属性:如geometryfont等。

2. 字符串处理

  • QString类:用于字符串操作,提供多种字符串处理函数。

四、信号与槽机制

1. 信号与槽的作用

  • 通信机制:组件间通过信号与槽进行通信。

2. 关联信号与槽

  • 自动关联:通过IDE自动生成槽函数。
  • 手动关联:使用connect函数手动关联。

3. 信号与槽的特点

  • Q_OBJECT宏定义:必须在类定义中加入以支持信号与槽。
  • 参数传递:信号与槽的参数必须匹配。

五、多界面跳转与参数传递

1. 界面跳转

  • 无需返回:创建新界面对象并显示,关闭当前界面。
  • 需要返回:创建新界面对象,传递this指针,隐藏当前界面。

2. 添加新界面

  • 通过IDE:右键工程名,选择添加QT设计师界面类。

3. 界面间参数传递

  • 公有方法:定义公有方法传递参数。
  • 自定义信号:通过信号传递参数。

六、布局管理器

1. 布局管理器的作用

  • 对齐组件:使组件在界面上整齐排列。

2. 常用布局管理器

  • 水平布局QHBoxLayout
  • 垂直布局QVBoxLayout
  • 栅格布局QGridLayout

3. 布局管理器使用技巧

  • 固定尺寸:设置最小和最大尺寸。
  • 使用分隔器:实现水平和垂直方向的伸缩。

七、消息盒子与对话框

1. 消息盒子QMessageBox

  • 弹出消息:警告、错误、帮助等。

2. 自带对话框

  • 颜色对话框QColorDialog
  • 字体对话框QFontDialog
  • 文件对话框QFileDialog

八、文件IO操作

1. 涉及的类

  • QFile:文件操作。
  • QDir:目录操作。
  • QFileInfo:文件属性信息。

2. 文件操作步骤

  • 定义QFile对象:与文件路径绑定。
  • 打开文件:设置读写模式。
  • 读写文件:使用readwrite等方法。
  • 关闭文件:调用close方法。

3. 字符串与字节数组转换

  • 自动转换QByteArrayQString
  • 转换函数toUtf8()data()等。

九、自定义对话框

1. 对话框模板

  • Dialog:独立弹窗。
  • MainWindow:多界面跳转。
  • Widget:子窗口嵌套。

2. 模态与非模态

  • 模态对话框exec()方法。
  • 非模态对话框show()方法。

十、定时器、日期与时间

1. 定时器QTimer

  • 定义与启动:创建对象,设置时间,启动。
  • 定时器作用:替代循环,执行定时任务。

2. 日期QDate

  • 获取当前日期currentDate()方法。

3. 时间QTime

  • 获取当前时间currentTime()方法。

十一、列表框操作

1. 横向列表框QListWidget

  • 添加、查找、删除列表项:使用addItemfindItemstakeItem等方法。

2. 树状列表框QTreeWidget

  • 设置头标签setHeaderLabel
  • 添加节点addTopLevelItemaddChild

3. 表格列表框QTableWidget

  • 设置行列数setColumnCountsetRowCount
  • 设置内容setItem

十二、命令参数

以下是部分命令的参数表格示例:

命令参数作用
QListWidget::addItemconst QString &label添加文本项
QListWidgetItem::text获取列表项文本
QListWidget::findItemsconst QString &text, Qt::MatchFlags flags查找列表项
QListWidget::takeItemint row删除指定行的列表项
QListWidget::setFont设置列表框字体
QListWidget::setIconSizeconst QSize &size设置列表框图标大小
QTreeWidget::setHeaderLabelconst QString &label设置树状列表框头标签
QTreeWidget::addTopLevelItemQTreeWidgetItem *item添加顶层节点
QTreeWidgetItem::addChildQTreeWidgetItem *child添加子节点
QTableWidget::setColumnCountint columns设置表格列数
QTableWidget::setHorizontalHeaderLabelsconst QStringList &labels设置表格水平头标签
QTableWidget::setItemint row, int column, QTableWidgetItem *item设置表格内容
QTimer::setIntervalint msec设置定时器超时时间
QDate::currentDate获取当前日期
QTime::currentTime获取当前时间

请注意,以上表格仅作为示例,实际参数和作用需要根据具体API文档进行详细查阅和整理。

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

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

相关文章

数据结构:模拟队列

数据结构&#xff1a;模拟队列 题目描述参考代码 题目描述 输入样例 10 push 6 empty query pop empty push 3 push 4 pop query push 6输出样例 NO 6 YES 4参考代码 #include <iostream>using namespace std;const int N 100010;int q[N], hh, tt;int m, x; string …

产品经理用AI,跟普通人有什么不同?

最近跟一个产品经理朋友聊天&#xff0c;他们公司最近单独拉一个只有产品经理的 team&#xff0c;要在接下来半年把过去几年火过的产品工具&#xff0c;“加上 AI 驱动”重新做一遍。 美其名曰“抓住 AI 浪潮的红利”。 这不是今天的重点&#xff0c;重点是他在高频的用 AI 设…

Java18+​App端采用uniapp+开发工具 idea hbuilder智能上门家政系统源码,一站式家政服务平台开发家政服务

Java18​App端采用uniapp开发工具 idea hbuilder智能上门家政系统源码&#xff0c;一站式家政服务平台开发 家政服务 家政服务是一个专为家政服务人员设计的平台&#xff0c;该平台旨在提供便捷、高效的工作机会&#xff0c;同时确保服务质量和客户体验。 以下是关于家政服务师…

交易量突破 3000 亿美元,去中心化衍生品协议 APX Finance 成最大的黑马?

“APX Finance 总交易量现已突破 3000 亿美元&#xff0c;已然成为链上衍生品赛道的主力军” 自 2021 年链上衍生品市场进入萌芽期以来&#xff0c;该板块始终保持着较高的市场增速&#xff0c;即便如此该领域仍旧存在极大的发展空间。一方面&#xff0c;衍生品板块交易量目前占…

水电站大坝安全监测工作详解

水电站大坝安全监测是确保大坝结构安全和操作安全的关键组成部分。本文将详细解释水电站大坝安全监测的9项主要工作内容&#xff0c;帮助理解其重要性和执行过程。 1) 现场监测 现场监测是水电站大坝安全监测的首要步骤。监测人员需要定期对大坝的物理结构进行检查&#xff0c;…

Atlassian企业日技术分享:AI在ITSM中的创新实践与应用、Jira服务管理平台AI功能介绍

2024年5月17日&#xff0c;Atlassian中国合作伙伴企业日活动在上海成功举办。活动以“AI协同 创未来——如何利用人工智能提升团队协作&#xff0c;加速产品交付”为主题&#xff0c;深入探讨了AI技术在团队协作与产品交付中的创新应用与实践&#xff0c;吸引了众多业内专家、企…

如何避免U盘数据泄露?U盘重要文件怎么加密?

U盘是最常用的移动存储设备&#xff0c;小巧的体积可以帮助我们存储大量数据。而为了保护U盘数据&#xff0c;避免文件泄露&#xff0c;我们需要加密保护U盘。那么&#xff0c;U盘重要文件该怎么加密呢&#xff1f;下面我们就来了解一下吧。 BitLocker 当你的U盘文件不多&…

Leetcode:最长公共前缀

题目链接&#xff1a;14. 最长公共前缀 - 力扣&#xff08;LeetCode&#xff09; 普通版本&#xff08;横向扫描&#xff09; 主旨&#xff1a;用第一个字符串与后续的每个字符串进行比较&#xff0c;先获取S1和S2的最长公共前缀&#xff0c;然后将该次比较获得的最长公共前缀…

stack学习

std::stack 类是一种容器适配器&#xff0c;它给予程序员栈的功能——特别是 FILO&#xff08;先进后出&#xff09;数据结构。该类模板用处为底层容器的包装器——只提供特定函数集合。栈从被称作栈顶的容器尾部推弹元素。 operator 赋值给容器适配器 (公开成员函数) 元素访问…

Execl数据导入 EasyExcel实现

官网 1. 需求简介 读取下面表格数据 第一行和第二行是计划信息 第三行是计划详情的抬头信息,以下行是计划详情信息 总段包含多个分段,总段使用了单元格合并功能 2. 实现读取功能 2.1 引入easyexcel依赖 <dependency><groupId>com.alibaba</groupId><…

微信小程序公众号二合一分销商城源码系统 基于PHP+MySQL组合开发的 可多商户商家入驻 带完整的安装代码包以及搭建教程

系统概述 微信小程序公众号二合一分销商城源码系统&#xff0c;是基于PHPMySQL组合开发的一款高效、稳定的电子商务平台解决方案。该系统创新性地将微信公众号与小程序的功能进行了深度整合&#xff0c;为商家提供了一个功能齐全、易于管理的分销商城系统。通过此系统&#xf…

JavaSE——学习总结

一、初识Java 运行Java程序 Java是一门半编译型、半解释型语言 先通过javac编译程序把源文件进行编译&#xff0c;编译后生成的.class文件是由字节码组成的&#xff0c;和平台无关、面向JVM的文件&#xff0c;最后启动java虚拟机来运行.class文件&#xff0c;此时JVM会将字节…

Python | 刷题日记

1.海伦公式求三角形的面积 area根号下&#xff08;p(p-a)(p-b&#xff09;(p-c)) p是周长的一半 2.随机生成一个整数 import random xrandom.randint(0,9)#随机生成0到9之间的一个数 yeval(input("please input:")) if xy:print("bingo") elif x<y:pri…

(十五)统计学基础练习题九(选择题T401-450)

本文整理了统计学基础知识相关的练习题&#xff0c;共50道&#xff0c;适用于想巩固统计学基础或备考的同学。来源&#xff1a;如荷学数据科学题库&#xff08;技术专项-统计学三&#xff09;。序号之前的题请看往期文章。 401&#xff09; 402&#xff09; 403&#xff09; 4…

算法-随机快排及荷兰国旗优化

文章目录 算法介绍 :1. 随机快排解析2. 荷兰国旗问题3. 随机快排优化4. 总结随机快排 算法介绍 : 随机快速排序和传统的快速排序的逻辑本质是一致的,都是找到一个值作为划分的中间位置,左边数值均小于该数值,右边数值均大于该数值,但是与传统的快排又不一致的是,我们的这个位置…

15 - 有趣的电影(高频 SQL 50 题基础版)

15 - 有趣的电影 select* from cinema wheredescription!boring and id%2!0 order by rating desc;

黑龙江等保测评有哪些内容?

与等保1.0相比&#xff0c;新的等保2.0版本有了很大的变化&#xff0c;评估的内容、评估的标准也有了很大的差异。那么新版的《等保2.0》实施后&#xff0c;我们要测试什么&#xff1f; 等保测评首先是有十个大项&#xff0c;安全物理环境&#xff0c;安全区域边界&#xff0c;…

标准发布 | 反渗透和纳滤水处理膜修复再利用技术指南

一、编制单位 本文件由浙江大学、中华环保联合会水环境治理专业委员会提出。 本文件由中华环保联合会归口。 本文件主编单位&#xff1a;浙江大学、河南一膜环保技术有限公司、安徽精高水处理有限公司、国能龙源环保有限公司、湖南沁森高科新材料有限公司。 本文件参编单位&…

getway整合sentinel流控降级

3. 启动sentinel控制台增加流控规则&#xff1a; 根据API分组进行流控&#xff1a; 1.设置API分组&#xff1a; 2.根据API分组进行流控&#xff1a; 自定义统一异常处理&#xff1a; nginx负载配置&#xff1a;

Redis位图

简介 在我们平时开发过程中&#xff0c;会有一些bool型数据需要存取&#xff0c;比如用户一年的签到记录&#xff0c;签了是1&#xff0c;没签是0&#xff0c;要记录365天。如果使用普通的key/value&#xff0c;每个用户要记录365个&#xff0c;当用户上亿的时候&#xff0c;需…