From 6d3efe7ff2afba811dd5f3323527e9fc3342b388 Mon Sep 17 00:00:00 2001 From: wumu <mayi@mayi.com> Date: 星期一, 08 一月 2024 22:33:46 +0800 Subject: [PATCH] 0108 --- internal_system_v1/converinfo2.h | 9 ++++ internal_system_v1/converinfo2.cpp | 53 +++++++++++++++++++++++++- internal_system_v1/internal_system_v1.pro.user | 2 internal_system_v1/converinfo2.ui | 4 +- 4 files changed, 61 insertions(+), 7 deletions(-) diff --git a/internal_system_v1/converinfo2.cpp b/internal_system_v1/converinfo2.cpp index 39ed849..00d82a3 100644 --- a/internal_system_v1/converinfo2.cpp +++ b/internal_system_v1/converinfo2.cpp @@ -1,5 +1,6 @@ 锘�#include "converinfo2.h" #include "ui_converinfo2.h" +#include <QDebug> ConverInfo2::ConverInfo2(QWidget *parent) : QMainWindow(parent), @@ -19,8 +20,54 @@ // 鏌ヨ琛ㄤ腑鎵�鏈夌殑鍏徃鍚嶅瓧锛屾斁鍒版爲褰㈣彍鍗曚腑 QStringList comInfo; comInfo<<"鐮佽殎杞欢"<<"C++璇剧▼浣撶郴"<<"宓屽叆寮忚绋嬩綋绯�"; - ui->treeWidget->addTopLevelItem(new QTreeWidgetItem(comInfo)); - // 璁剧疆鑿滃崟:娣诲姞鍗曚綅銆佸垹闄ゅ崟浣� + QTreeWidgetItem *top = new QTreeWidgetItem(ui->treeWidget,comInfo); + ui->treeWidget->addTopLevelItem(top); + ui->treeWidget->expandAll(); + QTreeWidgetItem *it1 = new QTreeWidgetItem(top); + it1->setText(0,"寮�鍙戦儴1"); + QTreeWidgetItem *it2 = new QTreeWidgetItem(top); + it2->setText(0,"寮�鍙戦儴2"); + QTreeWidgetItem *it3 = new QTreeWidgetItem(top); + it3->setText(0,"寮�鍙戦儴3"); + QTreeWidgetItem *top1 = new QTreeWidgetItem(ui->treeWidget); + top1->setText(0,"鐮佽殎闆嗗洟"); + QTreeWidgetItem *it4 = new QTreeWidgetItem(top1); + it4->setText(0,"寮�鍙戦儴4"); + top1->setCheckState(0,Qt::Checked); + it4->setCheckState(0,Qt::Checked); - // 鍗曚綅鍐呭淇敼 + // 璁剧疆鑿滃崟:娣诲姞鍗曚綅銆佸垹闄ゅ崟浣� + m_menu = new QMenu(this); + m_menu->addAction("鍒犻櫎"); + m_menu->addAction("澧炲姞"); + + ui->treeWidget->setContextMenuPolicy(Qt::CustomContextMenu); + connect(ui->treeWidget,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(showMenu(QPoint))); + + connect(m_menu->actions().at(0),SIGNAL(triggered(bool)),this,SLOT(deleteInfo())); + connect(m_menu->actions().at(1),SIGNAL(triggered(bool)),this,SLOT(addInfo())); + // 鍗曚綅鍐呭淇敼 +} + +void ConverInfo2::showMenu(QPoint p) +{ + QTreeWidgetItem * item = ui->treeWidget->itemAt(p); + if(item==nullptr)return; + m_curItem = item; + qDebug()<<"褰撳墠鑺傜偣:"<<m_curItem->text(0); + m_menu->exec(QCursor::pos()); + + +} + +void ConverInfo2::addInfo() +{ + if(m_curItem==nullptr)return; + qDebug()<<"娣诲姞鍏徃淇℃伅,鍦ㄨ妭鐐癸細"<<m_curItem->text(0); +} + +void ConverInfo2::deleteInfo() +{ + if(m_curItem==nullptr)return; + qDebug()<<"鍒犻櫎鍏徃淇℃伅,鑺傜偣锛�"<<m_curItem->text(0); } diff --git a/internal_system_v1/converinfo2.h b/internal_system_v1/converinfo2.h index fb285fd..12f755f 100644 --- a/internal_system_v1/converinfo2.h +++ b/internal_system_v1/converinfo2.h @@ -2,6 +2,8 @@ #define CONVERINFO2_H #include <QMainWindow> +#include <QMenu> +#include <QTreeWidgetItem> namespace Ui { class ConverInfo2; @@ -15,9 +17,14 @@ explicit ConverInfo2(QWidget *parent = 0); ~ConverInfo2(); void initUi(); - +private slots: + void showMenu(QPoint p); + void addInfo(); + void deleteInfo(); private: Ui::ConverInfo2 *ui; + QMenu *m_menu; + QTreeWidgetItem *m_curItem; }; #endif // CONVERINFO2_H diff --git a/internal_system_v1/converinfo2.ui b/internal_system_v1/converinfo2.ui index 2187d17..3c7d528 100644 --- a/internal_system_v1/converinfo2.ui +++ b/internal_system_v1/converinfo2.ui @@ -19,13 +19,13 @@ <rect> <x>30</x> <y>20</y> - <width>171</width> + <width>191</width> <height>531</height> </rect> </property> <column> <property name="text"> - <string>涓�绾у崟浣�</string> + <string>鍗曚綅淇℃伅</string> </property> </column> </widget> diff --git a/internal_system_v1/internal_system_v1.pro.user b/internal_system_v1/internal_system_v1.pro.user index b5c14ab..0f4dea8 100644 --- a/internal_system_v1/internal_system_v1.pro.user +++ b/internal_system_v1/internal_system_v1.pro.user @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE QtCreatorProject> -<!-- Written by QtCreator 4.5.0, 2023-12-24T23:58:42. --> +<!-- Written by QtCreator 4.5.0, 2024-01-06T21:52:42. --> <qtcreator> <data> <variable>EnvironmentId</variable> -- Gitblit v1.8.0