Qt工作笔记-双击TreeWidget列进行数据修改
运行截图如下:
代码如下:
widget.h
#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include <QTreeWidgetItem>namespace Ui {
class Widget;
}class Widget : public QWidget
{Q_OBJECTpublic:explicit Widget(QWidget *parent = 0);~Widget();public slots:void treeWidgetOpenEditor(QTreeWidgetItem *item,int col);void treeWidgetCloseEditor();private:Ui::Widget *ui;QTreeWidgetItem *m_myItem;int m_myCol;
};#endif // WIDGET_H
widget.cpp
#include "widget.h"
#include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget)
{ui->setupUi(this);m_myItem=NULL;m_myCol=-1;QStringList strList;strList.append("第一列");strList.append("第二列");ui->treeWidget->setHeaderLabels(strList);this->setWindowTitle("CSDN IT1995");for(int i=0;i<10;i++){QTreeWidgetItem *newItem=new QTreeWidgetItem(ui->treeWidget);newItem->setText(0,"第"+QString::number(i)+"行,第1列");newItem->setText(1,"第"+QString::number(i)+"行,第1列");ui->treeWidget->addTopLevelItem(newItem);}ui->treeWidget->setStyleSheet("QTreeWidget::item{height:20px}");// 设置行距大小,可以防止编译修改完成以后,行距会发生变化connect(ui->treeWidget,SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)),this,SLOT(treeWidgetOpenEditor(QTreeWidgetItem*,int)));connect(ui->treeWidget,SIGNAL(itemChanged(QTreeWidgetItem*,int)),this,SLOT(treeWidgetCloseEditor()));
}Widget::~Widget()
{delete ui;
}void Widget::treeWidgetOpenEditor(QTreeWidgetItem *item, int col)
{ui->treeWidget->openPersistentEditor(item,col);m_myItem=item;m_myCol=col;
}void Widget::treeWidgetCloseEditor()
{if(m_myItem!=NULL){ui->treeWidget->closePersistentEditor(m_myItem,m_myCol);}
}
main.cpp
#include "widget.h"
#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);Widget w;w.show();return a.exec();
}
Qt工作笔记-双击TreeWidget列进行数据修改相关推荐
- Qt工作笔记-保存textEdit中的数据,并自动打开文件
功能如标题所示. 程序运行如下: 代码如下: widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include & ...
- Qt工作笔记-QDialog模式对话框传递数据给主窗口
话不多说,上图: 这里同样是采用了Qt的信号与槽机制. 项目文件分布如下: 代码如下: dialog.h #ifndef DIALOG_H #define DIALOG_H#include <Q ...
- Qt工作笔记-发送端发送Json格式的数据包,接收端解析数据包
原理以及运行 原理是因为QJsonDocument提供了一个函数toJson 可以直接把Json数据转成QByteArray,这样就可以直接发送数据包,然后再按照常规方法解析即可,本源码中含解析内容, ...
- Qt工作笔记-MySQL获取select表头(域)数据
比如在开发的时候使用select但要提取域数据(基本上是二次开发的时候用) 如下: 如何使用Qt获取id,name,cardId,gender,major,birth的数据! 使用QSqlRecord ...
- Qt工作笔记-Qt连接Mysql数据库,检索及修改表数据
目录 原理 演示及现象 原理 因为要对数据库进行操作,然后用某个程序看现象,如果有一个进程,能对指定表中的所有数据进行批量修改,那么看现象将会多么的明显啊! 个人感觉实现这种功能大体有两种思路,一个是 ...
- Qt工作笔记-QByteArray与自定义结构体之间的转化(可用于网络传输,以及数据回调)
目录 理论 程序 理论 在Socket中,数据一般是char型(一般情况下,其实最好是用uchar来传输,避免莫名其妙的错误,但用char也是可以的),而在Qt里面可以使用QByteArray,这个在 ...
- Qt工作笔记-自定义QSortFilterProxyModel实现多列分别过滤
程序运行截图如下: 原理,重写QSortFilterProxyModel类中的filterAcceptsRow即可: 源码如下: mysortfilterproxymodel.h #ifndef MY ...
- Qt工作笔记-使用SQL中的LIMIT进行数据分页
目录 概念 操作 概念 这里使用SQL语言的中LIMIT的特点进行分页显示.这个关键字我就不多说了,现在来看运行截图! 表结构如下: 程序一开始运行: 分页显示: 操作 关键源码如下: sql.h # ...
- Qt工作笔记-QGraphics框架中,给图像中的点连线【获取场景中的数据】【有坑】
程序运行截图如下: 这里面有一个坑,就是获取场景中的元素并不是根据图像中,从左往右,从上往下这样的获取. 而是根据加入常见的先后,进行的, 如下图: Line是在Ellipse前加载的,所以是这样的结 ...
最新文章
- ssd手 和方向检测
- 【Android 逆向】Android 逆向工具 ( Apktool | IDA | Python )
- 如何加速云原生数据应用?这个开源项目备受关注
- spring的annotation-driven配置事务管理器详解
- 使用dnSpy调试asp.net core源码
- 搜索 —— 深搜的剪枝技巧
- Linux C基础笔记(2)
- 思科模拟器之GNS3,GUI小凡的完美替代
- 企业微信H5开发使用微信开发者工具
- iOS开发入门学习路线
- 设置背景颜色html,css怎么设置背景颜色?
- c# .net对接企业微信小助手 接口请求时长预警
- 认证系统之 devise 简单入门教程 (三)
- oracle数据库安装与打开,Oracle数据库在Linux 中的安装与启动动
- 摩托罗拉Android系统,摩托罗拉Droid官方Android 2.2系统详细功能展示
- easyswoole消息队列
- mac上启动nginx遇到80端口被占用的解决方法(猜了好久的坑我擦)
- Findora区块链培训课程重磅上线!(附视频)
- java字节码文件结构解析
- VLAN基础实验(ENSP)
热门文章
- 腾讯二面,我被 “赛马” 问题难住了
- 我要嫁给一个程序员你们怎么看?
- 今天的弹指一瞬间的飞鸽传书
- 年轻人不通人情世故的C++短处中
- VC实现在ListBox中选择背景位图
- python:栈的理解与应用,让你快速入门Python
- 机器学习中用到的概率知识_山顶洞人学机器学习之——几种常见的概率分布
- suse 查看java版本_SLES 11 中JDK的安装和配置
- c++矩阵连乘的动态规划算法并输出_算法交流: 7215 简单的整数划分问题 【2.7基本算法之算法效率】...
- GPS NMEA-0183协议常用数据格式及解析攻略