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

Qt常用控件之表格QTableWidget

表格QTableWidget

QTableWidget 是一个表格控件,行和列交汇形成的每个单元格,是一个 QTableWidgetItem 对象。

1. QTableWidget属性

QTableWidget 的属性只有两个:

属性说明
rowCount当前行的个数。
columnCount当前列的个数。

2. QTableWidget信号

信号说明
cellClicked(int row, int column)点击单元格时触发。
cellDoubleClicked(int row, int column)双击单元格时触发。
cellEntered(int row, int column)鼠标进入单元格时触发。
currentCellChanged(int row, int column,int previousRow, int previousColumn)选中不同单元格时触发。

3. QTableWidget方法

方法说明
item(int row, int column)根据行数列数获取单元格的 QTableWidgetItem*
setItem(int row, int column, QTableWidgetItem*)根据行数列数设置单元格中的元素。
currentItem()返回被选中的元素 QTableWidgetItem*
currentRow()返回被选中的是第几行。
currentColumn()返回被选中的是第几列。
row(QTableWidgetItem*)获取指定 item 是第几行。
column(QTableWidgetItem*)获取指定 item 是第几列。
rowCount()获取行数。
columnCount()获取列数。
insertRow(int row)在第 row 行处插入新行(新行变为第 row 行)。
insertColumn(int column)在第 column 列插入新列(新列变为第 column 列)。
removeRow(int row)删除第 row 行。
removeColumn(int column)删除第 column 列。
setHorizontalHeaderItem(int column, QTableWidget*)设置指定列的表头。
setVerticalHeaderItem(int row, QTableWidget*)设置指定行的表头。

4. QTableWidgetItem方法

方法说明
row()获取当前是第几行。
column()获取当前是第几列。
setText(const QString&)设置文本。
setTextAlignment(int)设置文本对齐。
setIcon(const QIcon&)设置图标。
setSelected(bool)设置能否被选中。
setSizeHints(const QSize&)设置尺寸。
setFont(const QFont&)设置字体。

5. 使用QTableWidget制作一个表格编辑器

表格编辑器的大部分功能 Qt 都已经提供了,我们只需要制作几个添加行首、列首之类的接口即可:

#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->lineEdit->setPlaceholderText("输入新增的列名");
}Widget::~Widget()
{delete ui;
}void Widget::on_pushButton_addRow_clicked()
{int row =ui->tableWidget->rowCount();ui->tableWidget->insertRow(row);
}void Widget::on_pushButton_addColumn_clicked()
{QString content=ui->lineEdit->text();if(content.isEmpty()){return;}int column =ui->tableWidget->columnCount();ui->tableWidget->insertColumn(column);ui->tableWidget->setHorizontalHeaderItem(column,new QTableWidgetItem(content));}void Widget::on_pushButton_deleteRow_clicked()
{int curRow=ui->tableWidget->currentRow();ui->tableWidget->removeRow(curRow);
}void Widget::on_pushButton_deleteColumn_clicked()
{int curColumn=ui->tableWidget->currentColumn();ui->tableWidget->removeremoveColumn(curColumn);
}

QTableWidget1

相关文章:

Qt常用控件之表格QTableWidget

表格QTableWidget QTableWidget 是一个表格控件,行和列交汇形成的每个单元格,是一个 QTableWidgetItem 对象。 1. QTableWidget属性 QTableWidget 的属性只有两个: 属性说明rowCount当前行的个数。columnCount当前列的个数。 2. QTableW…...

基于websocket的多用户网页五子棋 --- 测试报告

目录 功能测试自动化测试性能测试 功能测试 1.登录注册页面 2.游戏大厅页面 3.游戏房间页面 自动化测试 1.使用脑图编写web自动化测试用例 2.创建自动化项目,根据用例通过selenium来实现脚本 根据脑图进行测试用例的编写: 每个页面一个测试类&am…...

TypeError: Cannot assign to read only property ‘xxx‘ of object ‘#<Object>‘

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》、《前端求职突破计划》 🍚 蓝桥云课签约作者、…...

SyntaxError: Unexpected token ‘xxx‘

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》、《前端求职突破计划》 🍚 蓝桥云课签约作者、…...

简记_开关电源基础知识(二)

一、控制器与稳压器 假设开关损耗、导通损耗、驱动损耗的变化远小于输出功率的变化(可忽略),则占空比越大,Po越大,效率越高。 二、同步与非同步 同步是采用通态电阻极低的MOSFET来取代整流二极管,以降低整…...

grum-与gam-词源故事

“grum”词根的含义主要与“咕隆、发哼声、咕咕叫、发隆隆声”等相关。在16世纪90年代后,这个词开始被用来表示发出低沉持续的咆哮声或隆隆声,类似于饥饿的胃或某些动物发出的声音。 早期的富贵家族经常雇佣人去干活,体力活很容易因为劳工过…...

联合索引关于In和范围查询影响索引使用的情况分析

索引类型 1、unique ,唯一索引 2、normal,普通索引 3、fulltext, 全文索引 4、spatial,空间索引 样例 三个字段的联合索引,走一个字段是key_len是5,三个是15. 联合索引关于 使用in是不影响后续列 范围查询大于或小于…...

【目标检测】【NeuralPS 2023】Gold-YOLO:通过收集与分发机制实现的高效目标检测器

Gold-YOLO: Efficient Object Detector via Gather-and-Distribute Mechanism Gold-YOLO:通过收集与分发机制实现的高效目标检测器 0.论文摘要 在过去的几年中,YOLO系列模型已成为实时目标检测领域的领先方法。许多研究通过修改架构、增强数…...

2025上软考下周开启报名!附报考流程和常见问题解答

报名时间 :3月10日开始报名(以当地报名时间为准) 考试时间 :2025年5月24日~27日(具体时间以准考证为准) 报名网址 :中国计算机技术职业资格网(https://bm.ruankao.org.cn/sign/welcome) 目前已…...

PPT 小黑第16套

对应大猫19 在excel中复制表格 粘贴-选择性粘贴 -粘贴链接 业务部门和档案管理部门 剩下都是他们的下属级别 业务部门下面的选中按Tab 再选中Tab降级变成所属...

Swagger-01.介绍和使用方式

一.Swagger介绍 有了接口文档,我们就可以根据接口文档来开发后端的代码了。如果我们开发完了某个功能,后端如何验证我们开发的是否正确呢?我们就需要测试,使用Swagger就可以帮助后端生成接口文档,并且可以进行后端的接…...

从CL1看生物计算机的创新突破与发展前景:技术、应用与挑战的多维度剖析

一、引言 1.1 研究背景与意义 随着科技的飞速发展,计算机技术已经成为推动现代社会进步的核心力量之一。从最初的电子管计算机到如今的大规模集成电路计算机,计算机的性能得到了极大的提升,应用领域也不断拓展。然而,传统计算机…...

OpenCV视频解码性能优化十连击(实测帧率提升300%)

解密工业级视频处理优化方案!从硬件加速到多线程榨干CPU/GPU性能,附RTSP流调优参数与内存泄漏排查技巧。 🔧 优化前准备 环境检测脚本 import cv2# 验证硬件加速支持 print("CUDA支持:", cv2.cuda.getCudaEnabledDeviceCount() &…...

springboot3 RestClient、HTTP 客户端区别

1 RestClient使用 RestClient 是 Spring 6.1 M2 中引入的同步 HTTP 客户端,它取代了 RestTemplate。同步 HTTP 客户端以阻塞方式发送和接收 HTTP 请求和响应,这意味着它会等待每个请求完成后才继续下一个请求。本文将带你了解 RestClient 的功能以及它与…...

智能手表不可插卡怎么用

一、连接蓝牙 智能手表一般都可以通过蓝牙连接手机,以实现一些基础功能。连接方式一般分为以下几步: 1、首先打开手机的蓝牙功能,并在蓝牙列表中搜索手表的设备名称。 2、找到手表的设备名称后,点击连接即可完成蓝牙连接。 3、…...

blender看不到导入的模型

参考:blender 快捷键 常见问题_blender材质预览快捷键-CSDN博客 方法一:视图-裁剪起点,设置一个很大的值 方法二:选中所有对象,对齐视图-视图对齐活动项-选择一个视图...

【Unity】 HTFramework框架(六十一)Project窗口文件夹锁定器

更新日期:2025年3月7日。 Github源码:[点我获取源码] Gitee源码:[点我获取源码] 索引 Project窗口文件夹锁定器框架文件夹锁定自定义文件夹锁定限制条件 Project窗口文件夹锁定器 在Project窗口中,文件夹锁定器能够为任何文件夹加…...

智能体开发:推理-行动(ReAct)思维链提示

人类在处理一个需要多个步骤才能完成任务时,显著特点是能够将言语推理(内心独白)和实际行动融合在一起,在面对陌生或不确定的情况时通过这种方法学习新知识,做出决策,并执行,从而应对复杂的任务…...

机试准备第11天

第一题是浮点数加法&#xff0c;目前写过最长的代码。 #include <stdio.h> #include <string> #include <iostream> #include <vector> using namespace std; int main() {string str1;string str2;while (getline(cin, str1) && getline(cin…...

【Proteus仿真】【STM32单片机】智能阳台控制系统

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真STM32单片机控制器&#xff0c;使用按键、LCD1604液晶、DHT11温湿度模块、PCF8591 ADC、光线传感器、PM2.5传感器、土壤湿度传感器、继电器、水泵、电灯、28BYJ48步进电机等。 主要…...

省市区县四级联动数据获取指南:基于高德API的geoJSON数据自动更新方案

省市区县四级联动数据获取指南&#xff1a;基于高德API的geoJSON数据自动更新方案 行政区划数据是地理信息系统和数据分析领域的基础要素之一。无论是制作可视化地图、进行区域统计分析&#xff0c;还是开发基于位置的服务应用&#xff0c;准确、实时的行政区划数据都至关重要。…...

告别杂乱农场:星露谷物语规划神器助你打造高效田园

告别杂乱农场&#xff1a;星露谷物语规划神器助你打造高效田园 【免费下载链接】stardewplanner Stardew Valley farm planner 项目地址: https://gitcode.com/gh_mirrors/st/stardewplanner 你是否曾在星露谷物语中面对一片荒地感到无从下手&#xff1f;种植区域混乱、…...

ViGEmBus虚拟控制器驱动完全指南:从设备模拟到多场景应用

ViGEmBus虚拟控制器驱动完全指南&#xff1a;从设备模拟到多场景应用 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 一、为什么需要虚拟控制器&#xff1f;…...

手把手教你用XCVU3P和FMC+接口搭建高性能PCIe载板(附原理图下载)

基于XCVU3P与FMC的高性能PCIe载板开发实战指南 在当今高速数据处理领域&#xff0c;FPGA因其并行计算能力和可重构特性成为关键器件。Xilinx UltraScale系列的XCVU3P芯片配合FMC扩展接口&#xff0c;为开发者提供了强大的硬件加速平台。本文将深入解析如何从零开始构建一个支持…...

2026年小红书文案降AI工具怎么选?自媒体人亲测这4款最靠谱

开始做小红书内容之前&#xff0c;我以为降AI只是学生的事。后来才发现&#xff0c;品牌方审稿也在查AI率&#xff0c;小红书平台自己也有AI检测机制。 自媒体文案的降AI需求和论文不一样&#xff0c;核心要求是&#xff1a;保留口语化语感&#xff0c;不能变成学术腔。降完还…...

告别ZooKeeper!ClickHouse Keeper双机集群搭建全攻略(含常见报错解决方案)

ClickHouse Keeper双机集群实战指南&#xff1a;从零搭建到故障排查 1. 为什么选择ClickHouse Keeper替代ZooKeeper 在ClickHouse集群架构中&#xff0c;协调服务一直扮演着关键角色。传统方案依赖ZooKeeper实现分布式协调&#xff0c;但这种方式存在几个明显痛点&#xff1a; …...

TC3XX Autosar系统中文配置手册:包含19个模块的详细解析与联系指南

tc3xx autosar EB中文配置手册&#xff0c;需要联系。 一共有大约19个模块。 在汽车电子开发领域&#xff0c;TC3xx系列芯片AUTOSAR架构的组合越来越常见。最近研究EB&#xff08;Elektrobit&#xff09;配置工具时&#xff0c;发现其19个核心模块的配置逻辑其实藏着不少"…...

AI智能体工作完整源码大公开!企业级多Agent框架,一键私有化部署

温馨提示&#xff1a;文末有资源获取方式最近“龙虾AI”的热度席卷技术圈&#xff0c;大家都在讨论如何“养殖”自己的智能体。但真正落地时&#xff0c;技术门槛、Token消耗与复杂的协同问题&#xff0c;往往让普通用户和企业望而却步。今天我们不谈概念&#xff0c;直接分享一…...

基于MATLAB的平移线扫激光三维重建完整方案与代码实现

现整理了一套完整的&#xff0c;平移线扫重建 matlab代码和方案&#xff0c;包含相机标定、光平面标定与方案、移动装置标定与方案、激光线条中心线自适应提取、畸变矫正、三维重建、点云滤波等部分&#xff0c;代码按模块编写&#xff0c;注释完整&#xff0c;附带一份完整苹果…...

AI持续爆火,相关岗位薪资到底达到了多少,AI大模型岗位薪资真相:多少年包能拿到?普通人如何破局?

“AI相关岗位薪资” 随着AI持续火爆&#xff0c;各大厂也都在招聘相关人才&#xff0c;近日OfferShow专门对AI相关岗位的工资情况进行了一期专题汇总&#xff0c;都是校招岗位年包90W左右年包100W年包80w70W50W左右40W左右54W左右34W左右。 看大家投票可信度还是挺高的&#xf…...