亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

QTreeWidget中添加右鍵菜單

2019-11-11 03:26:26
字體:
來源:轉載
供稿:網友

頭文件

#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>namespace Ui {class MainWindow;}class MainWindow : public QMainWindow{ Q_OBJECTpublic: explicit MainWindow(QWidget *parent = 0); ~MainWindow();PRivate slots: void onGrpMenuTriggered(QAction *action); void onMemberMenuTriggered(QAction *action); void onAddAreaMenuTriggered(QAction *action);private: //grp menu QMenu *m_grpMenu; //child menu QMenu *m_memberMenu; QMenu *m_addAreaMenu; //grp action QAction *m_grpAddOneMember; QAction *m_grpDeleteGrp; QAction *m_grpAddOneGrp; //child action QAction *m_memberDelete; QAction *m_memberMove; QAction *m_memberSyncTime; //action QAction *m_addAreaAction; QAction *m_grpFlush; QAction *m_addDev; void createItemMenu(); //構造函數中調用此函數 void createTreeWidget(); void contextMenuEvent(QContextMenuEvent *event);private: Ui::MainWindow *ui;};#endif // MAINWINDOW_H

.cpp文件

#include "mainwindow.h"#include "ui_mainwindow.h"#include <QContextMenuEvent>#include <QTreeWidgetItem>#include <qDebug>MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); createItemMenu(); createTreeWidget();}MainWindow::~MainWindow(){ delete ui;}void MainWindow::createItemMenu(){ m_grpMenu = new QMenu(this); m_memberMenu = new QMenu(this); m_addAreaMenu = new QMenu(this); connect(m_grpMenu,SIGNAL(triggered(QAction *)), this,SLOT(onGrpMenuTriggered(QAction *))); connect(m_memberMenu,SIGNAL(triggered(QAction *)), this,SLOT(onMemberMenuTriggered(QAction *))); connect(m_addAreaMenu,SIGNAL(triggered(QAction *)), this,SLOT(onAddAreaMenuTriggered(QAction *))); m_grpAddOneMember = new QAction(tr("增加子區域"),this); m_grpAddOneMember->setIcon(QIcon(":/image/add.png")); m_grpAddOneGrp = new QAction(tr("增加設備"),this); m_grpAddOneGrp->setIcon(QIcon(":/image/add.png")); m_grpDeleteGrp = new QAction(tr("刪除區域"),this); m_grpDeleteGrp->setIcon(QIcon(":/image/delete.png")); m_memberDelete = new QAction(tr("刪除設備"),this); m_memberDelete->setIcon(QIcon(":/image/delete.png")); m_memberMove = new QAction(tr("移動設備"),this); m_memberMove->setIcon(QIcon(":/image/next.png")); m_memberSyncTime = new QAction(tr("同步時間"),this); m_memberSyncTime->setIcon(QIcon(":/image/move.png")); m_addAreaAction = new QAction(tr("增加區域"),this); m_addAreaAction->setIcon(QIcon(":/image/add.png")); m_addDev = new QAction(tr("增加設備"),this); m_addDev->setIcon(QIcon(":/image/add.png")); m_grpFlush = new QAction(tr("刷新列表"),this); m_grpFlush->setIcon(QIcon(":/image/update.png"));}//重構contextMenuEvent函數,記得#include <QContextMenuEvent>void MainWindow::contextMenuEvent(QContextMenuEvent *event){ QTreeWidgetItem *item = ui->treeWidget->currentItem(); if(item == NULL) { qDebug()<<"空白處"; if (m_addAreaMenu->isEmpty()) { //增加區域 m_addAreaMenu->addAction(m_addAreaAction); m_addAreaMenu->addAction(m_addDev); m_addAreaMenu->addAction(m_grpFlush); } //菜單出現的位置為當前鼠標的位置 m_addAreaMenu->exec(QCursor::pos()); } else if(ui->treeWidget->currentItem()->childCount() > 0) { if (m_grpMenu->isEmpty()) { //增加子區域 m_grpMenu->addAction(m_grpAddOneMember); //刪除區域 m_grpMenu->addAction(m_grpDeleteGrp); m_grpMenu->addAction(m_grpAddOneGrp); } m_grpMenu->exec(QCursor::pos()); } else if(ui->treeWidget->currentItem()->childCount() == 0) { if (m_memberMenu->isEmpty()) { //刪除設備 m_memberMenu->addAction(m_memberDelete); //移動設備 m_memberMenu->addAction(m_memberMove); //同步時間 m_memberMenu->addAction(m_memberSyncTime); } m_memberMenu->exec(QCursor::pos()); } event->accept();}void MainWindow::onGrpMenuTriggered(QAction *action){ if (action == m_grpAddOneMember) {//增加子區域 qDebug()<<"增加子區域"; } else if (action == m_grpDeleteGrp) {//刪除區域 qDebug()<<"刪除區域"; } else if(action == m_grpAddOneGrp) { qDebug()<<"增加子區域"; }}void MainWindow::onMemberMenuTriggered(QAction *action){ if (action == m_memberDelete) {//刪除設備 } else if(action == m_memberMove) {//移動設備 } else if(action == m_memberSyncTime) {//同步時間 }}void MainWindow::onAddAreaMenuTriggered(QAction *action){ if (action == m_addAreaAction) {//增加區域 } if(action == m_addDev) {//增加設備 } if(action == m_grpFlush) {//刷新 }}void MainWindow::createTreeWidget(){ QIcon icon; icon.addPixmap(QPixmap(":/image/openStatus.png"), QIcon::Normal, QIcon::On);//節點打開狀態 icon.addPixmap(QPixmap(":/image/closeStatus.png"), QIcon::Normal, QIcon::Off);//節點關閉狀態 ui->treeWidget->setColumnCount(1); QStringList headers; headers << QObject::tr("管理"); ui->treeWidget->setHeaderLabels(headers); QStringList rootName_1; rootName_1 << QObject::tr("常用文件夾"); QTreeWidgetItem *rootItem_1 = new QTreeWidgetItem(ui->treeWidget, rootName_1); // rootItem_1->setIcon(0, QIcon(":/image/add.png")); //增加靜態圖標 rootItem_1->setIcon(0,icon); QStringList childName_1_1; childName_1_1 << "所有未讀"; QTreeWidgetItem *childItem_1_1 = new QTreeWidgetItem(rootItem_1, childName_1_1); rootItem_1->addChild(childItem_1_1); QStringList childName_1_2; childName_1_2 << QObject::tr("置頂郵件"); QTreeWidgetItem *childItem_1_2 = new QTreeWidgetItem(rootItem_1, childName_1_2); rootItem_1->addChild(childItem_1_2); QStringList rootName_2; rootName_2 << QObject::tr("我的郵箱"); QTreeWidgetItem *rootItem_2 = new QTreeWidgetItem(ui->treeWidget, rootName_2); rootItem_2->setIcon(0,icon); QStringList childName_2_1; childName_2_1 << QObject::tr("收件箱"); QTreeWidgetItem *childItem_2_1 = new QTreeWidgetItem(rootItem_2, childName_2_1); rootItem_2->addChild(childItem_2_1); QStringList childName_2_2; childName_2_2 << QObject::tr("草稿箱"); QTreeWidgetItem *childItem_2_2 = new QTreeWidgetItem(rootItem_2, childName_2_2); rootItem_2->addChild(childItem_2_2); QStringList childName_2_3; childName_2_3 << QObject::tr("發件箱"); QTreeWidgetItem *childItem_2_3 = new QTreeWidgetItem(rootItem_2, childName_2_3); rootItem_2->addChild(childItem_2_3); ui->treeWidget->addTopLevelItem(rootItem_1); ui->treeWidget->addTopLevelItem(rootItem_2); QStringList childName_1_2_1; childName_1_2_1 << "測試"; QTreeWidgetItem *childItem_1_2_1 = new QTreeWidgetItem(childItem_1_2, childName_1_2_1); childItem_1_2->addChild(childItem_1_2_1);}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品男女猛烈高潮激情| 欧美区在线播放| www日韩欧美| 国产美女精彩久久| 欧美亚洲成人xxx| 国产最新精品视频| 国产亚洲精品一区二555| 亚洲www永久成人夜色| 激情久久av一区av二区av三区| www.亚洲一二| 久久97精品久久久久久久不卡| 色琪琪综合男人的天堂aⅴ视频| 欧美精品videosex极品1| 亚洲欧洲高清在线| 日韩在线观看视频免费| 欧美成人网在线| 国模吧一区二区| 欧美激情亚洲一区| 这里只有精品在线播放| 狠狠色狠狠色综合日日五| 亚洲男人天堂网站| 国产一区二区色| 91国产一区在线| 国产一区二区三区丝袜| 欧美精品999| 欧美成人第一页| 亚洲视频在线观看视频| 亚洲最大的免费| 91福利视频在线观看| 日韩免费黄色av| 欧美日韩在线观看视频小说| 亚洲精品久久久久国产| 在线电影av不卡网址| xxxxx成人.com| 欧美第一黄网免费网站| 久久在线免费视频| 亚洲天堂开心观看| 91免费观看网站| 激情懂色av一区av二区av| 久久精品电影网站| 国产成人黄色av| 成人在线精品视频| 国产精品久久网| 日本一本a高清免费不卡| 成人av番号网| 国产日本欧美一区二区三区在线| 国产精品久久久久久久久久东京| 久久久这里只有精品视频| 亚洲精品在线不卡| 九九热99久久久国产盗摄| 亚洲精品电影在线| x99av成人免费| 亚洲图片在区色| 日韩网站免费观看| 91视频免费在线| 亚洲加勒比久久88色综合| 狠狠色香婷婷久久亚洲精品| 欧美多人爱爱视频网站| 91系列在线观看| 国产精品久久久av| 国产精品揄拍一区二区| 色综合影院在线| 久久精品夜夜夜夜夜久久| 伦伦影院午夜日韩欧美限制| 日韩亚洲欧美中文在线| 亚洲精品理论电影| 精品日本美女福利在线观看| 亚洲开心激情网| 国产欧美精品一区二区三区介绍| 亚洲影影院av| 国产成人精品视频| 久久久久久com| 亚洲精品成人久久| 精品国产区一区二区三区在线观看| 日韩av电影国产| 国产在线观看精品一区二区三区| 欧美性猛交xxxx乱大交3| 亚洲va久久久噜噜噜久久天堂| 久久久精品一区| 亚洲精品电影网站| 欧美日韩不卡合集视频| 亚洲第一天堂av| 午夜精品一区二区三区av| 性色av一区二区三区在线观看| 国产精品久久一| 国产伊人精品在线| 国产精品对白刺激| 久久99久久99精品免观看粉嫩| 亚洲国产精彩中文乱码av| 亚洲欧美国产一区二区三区| 国产91ⅴ在线精品免费观看| 狠狠色香婷婷久久亚洲精品| 国产盗摄xxxx视频xxx69| 国产一区二区日韩| 久久色免费在线视频| 欧美午夜精品久久久久久久| 欧美成年人视频| 国产午夜精品一区理论片飘花| 日韩欧美黄色动漫| 国产精品吊钟奶在线| 91精品国产自产91精品| 久久亚洲精品毛片| 欧美一区二区三区精品电影| 欧美高清激情视频| 欧美日韩第一视频| 国产女人18毛片水18精品| 精品无人区乱码1区2区3区在线| 正在播放亚洲1区| 欧美激情精品久久久久久久变态| 蜜臀久久99精品久久久久久宅男| 日韩少妇与小伙激情| 亚洲摸下面视频| 中文字幕国内精品| 久久精视频免费在线久久完整在线看| 国产91精品久久久久久| 国产精品mp4| 久久综合国产精品台湾中文娱乐网| 亚洲小视频在线观看| 成人网在线免费观看| 亚洲自拍偷拍网址| 日韩在线观看免费全| 欧洲午夜精品久久久| 中文字幕综合在线| 奇米成人av国产一区二区三区| 国产精品www网站| 亚洲区中文字幕| 98视频在线噜噜噜国产| 在线观看亚洲视频| 国产午夜精品全部视频播放| 尤物九九久久国产精品的特点| 美女999久久久精品视频| 国产精品亚洲美女av网站| 亚洲精品av在线播放| 精品中文字幕在线观看| 欧美电影在线观看完整版| 91精品91久久久久久| 欧美成人免费va影院高清| 亚洲精品一区二三区不卡| 久久天堂av综合合色| 久久久国产一区| 亚洲人成电影在线观看天堂色| 欧美精品免费看| 亚洲电影免费观看高清完整版在线| 亚洲a区在线视频| 日韩欧美中文在线| 国内外成人免费激情在线视频网站| 不卡伊人av在线播放| 亚洲精品之草原avav久久| 欧美激情第三页| 亚洲电影av在线| 国产精品免费一区| 亚洲网在线观看| 97成人精品视频在线观看| 久久人人爽人人爽爽久久| 欧美福利视频在线观看| 少妇高潮久久77777| 一本一本久久a久久精品综合小说| 国产极品精品在线观看| 欧美三级免费观看| 午夜欧美不卡精品aaaaa| 国产精品综合网站| 一本色道久久88综合日韩精品| 国产精品一区二区性色av| 亚洲国产成人精品一区二区|