From 5efd96cc316f8a704f0f6315b85078b738ddee04 Mon Sep 17 00:00:00 2001 From: wumu <mayi@mayi.com> Date: 星期二, 26 十一月 2024 23:37:02 +0800 Subject: [PATCH] 1126 --- internal_system_v1/threemergeproblemlist.cpp | 77 ++++++++++++++++++------- internal_system_v1/internal_system_v1.pro | 6 + internal_system_v1/noedititemdelegate.h | 20 ++++++ internal_system_v1/threemergeproblemlist.ui | 10 +++ internal_system_v1/noedititemdelegate.cpp | 26 ++++++++ internal_system_v1/threemergeproblemlist.h | 5 + 6 files changed, 121 insertions(+), 23 deletions(-) diff --git a/internal_system_v1/internal_system_v1.pro b/internal_system_v1/internal_system_v1.pro index 89a7341..619cfcf 100644 --- a/internal_system_v1/internal_system_v1.pro +++ b/internal_system_v1/internal_system_v1.pro @@ -47,7 +47,8 @@ customheaderview.cpp \ comboboxdelegate.cpp \ datedelegate.cpp \ - exporttofile.cpp + exporttofile.cpp \ + noedititemdelegate.cpp HEADERS += \ clientmainwindow.h \ @@ -72,7 +73,8 @@ customheaderview.h \ comboboxdelegate.h \ datedelegate.h \ - exporttofile.h + exporttofile.h \ + noedititemdelegate.h FORMS += \ clientmainwindow.ui \ diff --git a/internal_system_v1/noedititemdelegate.cpp b/internal_system_v1/noedititemdelegate.cpp new file mode 100644 index 0000000..c6dda9f --- /dev/null +++ b/internal_system_v1/noedititemdelegate.cpp @@ -0,0 +1,26 @@ +锘�#include "noedititemdelegate.h" + +NoEditItemDelegate::NoEditItemDelegate(QObject *p):QItemDelegate(p) +{ + +} + +QWidget *NoEditItemDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const +{ + return nullptr; +} + +void NoEditItemDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const +{ + +} + +void NoEditItemDelegate::setEditorData(QWidget *editor, const QModelIndex &index) const +{ + +} + +void NoEditItemDelegate::updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &index) const +{ + +} diff --git a/internal_system_v1/noedititemdelegate.h b/internal_system_v1/noedititemdelegate.h new file mode 100644 index 0000000..794dce4 --- /dev/null +++ b/internal_system_v1/noedititemdelegate.h @@ -0,0 +1,20 @@ +锘�#ifndef NOEDITITEMDELEGATE_H +#define NOEDITITEMDELEGATE_H + +#include <QItemDelegate> + + + +class NoEditItemDelegate : public QItemDelegate +{ + Q_OBJECT +public: + NoEditItemDelegate(QObject *p = 0); + + QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const; + void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const; + void setEditorData(QWidget *editor, const QModelIndex &index) const; + void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &index) const; +}; + +#endif // NOEDITITEMDELEGATE_H diff --git a/internal_system_v1/threemergeproblemlist.cpp b/internal_system_v1/threemergeproblemlist.cpp index fe1fb5e..5ccc493 100644 --- a/internal_system_v1/threemergeproblemlist.cpp +++ b/internal_system_v1/threemergeproblemlist.cpp @@ -6,6 +6,7 @@ #include <QMessageBox> #include <QDir> #include <QFileDevice> +#include "noedititemdelegate.h" #pragma execution_character_set("utf-8") @@ -16,6 +17,7 @@ ui->setupUi(this); m_fdd = new FileDialogDelegate; + //m_noEdit = new ThreeComboBox; ui->statusbar->hide(); ui->menubar->hide(); @@ -50,6 +52,7 @@ ThreeMergeProblemList::~ThreeMergeProblemList() { + //delete m_noEdit; delete ui; } @@ -258,6 +261,7 @@ QTableWidgetItem *item_1 = new QTableWidgetItem(label); item_1->setForeground(QBrush(QColor("#ff00ff"))); ui->tableWidget->setHorizontalHeaderItem(i,item_1); + //ui->tableWidget->setItem(1,i,item_1); } for(int i=14;i<14+10;++i){ @@ -323,19 +327,50 @@ QStringList fwLabels; fwLabels << "褰曞叆(鐩存帴杈撳叆鍚庡洖杞﹀嵆鍙�)"<<"涓婁紶"; m_cbb_file_wri = new ComboBoxDelegate(fwLabels,this,true); - ui->tableWidget->setItemDelegateForColumn(13,m_cbb_file_wri); - ui->tableWidget->setItemDelegateForColumn(17,m_cbb_file_wri); - ui->tableWidget->setItemDelegateForColumn(23,m_cbb_file_wri); + ui->tableWidget->setItemDelegateForColumn(13+2,m_cbb_file_wri); + ui->tableWidget->setItemDelegateForColumn(17+2,m_cbb_file_wri); + ui->tableWidget->setItemDelegateForColumn(23+2,m_cbb_file_wri); // 澶勭悊骞存湀鏃ユ椂闂� m_date_ymd = new DateDelegate(this,"yyyy/MM/dd"); - ui->tableWidget->setItemDelegateForColumn(19,m_date_ymd); - ui->tableWidget->setItemDelegateForColumn(21,m_date_ymd); - ui->tableWidget->setItemDelegateForColumn(24,m_date_ymd); - ui->tableWidget->setItemDelegateForColumn(29,m_date_ymd); - ui->tableWidget->setItemDelegateForColumn(31,m_date_ymd); - ui->tableWidget->setItemDelegateForColumn(34,m_date_ymd); + ui->tableWidget->setItemDelegateForColumn(19+2,m_date_ymd); + ui->tableWidget->setItemDelegateForColumn(21+2,m_date_ymd); + ui->tableWidget->setItemDelegateForColumn(24+2,m_date_ymd); + ui->tableWidget->setItemDelegateForColumn(29+2,m_date_ymd); + ui->tableWidget->setItemDelegateForColumn(31+2,m_date_ymd); + ui->tableWidget->setItemDelegateForColumn(34+2,m_date_ymd); + + // 灏嗘爣棰樺鍏ョ涓夎 + for(int i=0;i<ui->tableWidget->columnCount();++i){ + QString label = ui->tableWidget->horizontalHeaderItem(i)->text(); + QTableWidgetItem *item = new QTableWidgetItem(label); + if(i < 16){ + item->setBackground(QBrush(QColor("#ff00ff"))); + }else if(i < 16+10){ + item->setBackground(QBrush(QColor("#00aaff"))); + } + + ui->tableWidget->setItem(2,i,item); + } + + // 骞朵笖绂佺敤缂栬緫鍔熻兘 + //ui->tableWidget->setItemDelegateForRow(1,m_noEdit); + //ui->tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers); + m_noEdit = new TableItemDelegate; + ui->tableWidget->setItemDelegateForRow(0,m_noEdit); + ui->tableWidget->setItemDelegateForRow(1,m_noEdit); + ui->tableWidget->setItemDelegateForRow(2,m_noEdit); + + + // 鍚堝苟绗竴琛岀殑鎯呭喌锛岃繘琛屽垎绫� + + + ui->tableWidget->setItem(0,1,new QTableWidgetItem("鍙戠幇闂")); + ui->tableWidget->setItem(0,18,new QTableWidgetItem("鍙戠幇闂22")); + ui->tableWidget->setSpan(0,1,2,15); + ui->tableWidget->item(0,1)->setTextAlignment(Qt::AlignCenter); + ui->tableWidget->item(0,1)->font().setBold(true); // 鍔犺浇鍏徃鍚� readCompanyFromSQL(); @@ -616,9 +651,9 @@ int rows = saveDataLine(row); if(rows>0){ // 闇�瑕佸皢鏂囦欢鎷疯礉鍒癷d鐩綍 - QString fpath = ui->tableWidget->item(row,13)->text(); - QString spath = ui->tableWidget->item(row,17)->text(); - QString tpath = ui->tableWidget->item(row,23)->text(); + QString fpath = ui->tableWidget->item(row,13+2)->text(); + QString spath = ui->tableWidget->item(row,17+2)->text(); + QString tpath = ui->tableWidget->item(row,23+2)->text(); QString fid = ui->tableWidget->item(row,0)->text(); QString proName = ui->tableWidget->item(row,7)->text(); // 椤圭洰鍚嶇О qDebug()<<"鎷疯礉鏂囦欢:"<<fid<<proName<<fpath; @@ -627,15 +662,15 @@ int sflag1 = saveFile(fpath,fid,absSavePath1,proName); // 淇濆瓨绗竴涓� if(sflag1==1){ - ui->tableWidget->setItem(row,13,new QTableWidgetItem(absSavePath1)); + ui->tableWidget->setItem(row,13+2,new QTableWidgetItem(absSavePath1)); } int sflag2 = saveFile(spath,fid,absSavePath2,proName); // 淇濆瓨绗簩涓� if(sflag2==1){ - ui->tableWidget->setItem(row,17,new QTableWidgetItem(absSavePath2)); + ui->tableWidget->setItem(row,17+2,new QTableWidgetItem(absSavePath2)); } int sflag3 = saveFile(tpath,fid,absSavePath3,proName); // 淇濆瓨绗笁涓� if(sflag3==1){ - ui->tableWidget->setItem(row,23,new QTableWidgetItem(absSavePath3)); + ui->tableWidget->setItem(row,23+2,new QTableWidgetItem(absSavePath3)); } qDebug()<<"save falg:"<<sflag1<<sflag2<<sflag3; if(sflag1 || sflag2 || sflag3){ @@ -847,15 +882,15 @@ int sflag1 = saveFile(fpath,fid,absSavePath1,proName); // 淇濆瓨绗竴涓� if(sflag1==1){ - ui->tableWidget->setItem(i,13,new QTableWidgetItem(absSavePath1)); + ui->tableWidget->setItem(i,13+2,new QTableWidgetItem(absSavePath1)); } int sflag2 = saveFile(spath,fid,absSavePath2,proName); // 淇濆瓨绗簩涓� if(sflag2==1){ - ui->tableWidget->setItem(i,17,new QTableWidgetItem(absSavePath2)); + ui->tableWidget->setItem(i,17+2,new QTableWidgetItem(absSavePath2)); } int sflag3 = saveFile(tpath,fid,absSavePath3,proName); // 淇濆瓨绗笁涓� if(sflag3==1){ - ui->tableWidget->setItem(i,23,new QTableWidgetItem(absSavePath3)); + ui->tableWidget->setItem(i,23+2,new QTableWidgetItem(absSavePath3)); } qDebug()<<"save falg:"<<sflag1<<sflag2<<sflag3; if(sflag1 || sflag2 || sflag3){ @@ -973,9 +1008,9 @@ if(row>=0 && item){ qDebug()<<"row"<<row; // 鍙栦笅鏍� 13 17 23 - auto item_13 = ui->tableWidget->item(row,13); - auto item_17 = ui->tableWidget->item(row,17); - auto item_23 = ui->tableWidget->item(row,23); + auto item_13 = ui->tableWidget->item(row,13+2); + auto item_17 = ui->tableWidget->item(row,17+2); + auto item_23 = ui->tableWidget->item(row,23+2); if(item_13){ qDebug()<<item_13->text(); QString text = item_13->text(); diff --git a/internal_system_v1/threemergeproblemlist.h b/internal_system_v1/threemergeproblemlist.h index b02af12..0f5402e 100644 --- a/internal_system_v1/threemergeproblemlist.h +++ b/internal_system_v1/threemergeproblemlist.h @@ -12,6 +12,9 @@ #include "comboboxdelegate.h" #include "datedelegate.h" #include "struct_data.h" +//#include "threecombobox.h" +#include "tableitemdelegate.h" + #include <QPdfWriter> //#include <QtWebEngineWidgets/QtWebEngineWidgets> @@ -102,6 +105,8 @@ ComboBoxDelegate *m_cbb_file_wri; // 闂鎻忚堪浣愯瘉 DateDelegate *m_date_ymd; // 鏃堕棿 骞存湀鏃� + //ThreeComboBox *m_noEdit; // 绂佺敤缂栬緫鍔熻兘 + TableItemDelegate *m_noEdit; //QWebEngineView *m_pdfView; // 浣跨敤娴忚鍣ㄥ姞杞絧df鏂囦欢 }; diff --git a/internal_system_v1/threemergeproblemlist.ui b/internal_system_v1/threemergeproblemlist.ui index aaaf2e1..f5c0cee 100644 --- a/internal_system_v1/threemergeproblemlist.ui +++ b/internal_system_v1/threemergeproblemlist.ui @@ -830,6 +830,16 @@ </column> <column> <property name="text"> + <string>瀹¤鍙戠幇闂閲戦瀹氭��</string> + </property> + </column> + <column> + <property name="text"> + <string>瀹¤鍙戠幇闂涓暟瀹氭��</string> + </property> + </column> + <column> + <property name="text"> <string>娑夊強閲戦(涓囧厓)</string> </property> </column> -- Gitblit v1.8.0