Qt工作笔记-双击TreeWidget列进行数据修改
生活随笔
收集整理的這篇文章主要介紹了
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_Hwidget.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工作笔记-主界面往模式对话框emit
- 下一篇: Python工作笔记-仿大佬的list赋