QT中treewidget中右键添加QAction方法

  1. `void MainDispWindow::onHeaderRightClicked(const QPoint &pos)

    {

    QHeaderView *h = ui->tree_Equip->header();

    int col = h->logicalIndexAt(pos); // 点的是哪一列

    if (col == -1) return; // 空白处

    QMenu menu;

    QAction *addEquip = menu.addAction("添加设备");

    QAction *selected = menu.exec(h->mapToGlobal(pos));

    if (selected == addEquip)

    {

    QTimer::singleShot(0, this, this{ m_IPChangeDialog->show(); });

    }

    }`

  2. `void MainDispWindow::on_tree_Equip_customContextMenuRequested(const QPoint &pos)

    {

    QTreeWidgetItem *item = ui->tree_Equip->itemAt(pos);

    if (!item) return; // 空白处右键直接忽略

    QMenu menu;

    QAction *addEquip = menu.addAction("添加设备");

    QAction *selected = menu.exec(ui->tree_Equip->viewport()->mapToGlobal(pos));

    if (selected == addEquip) {

    复制代码
    QTimer::singleShot(0, this, [this]{ m_IPChangeDialog->show(); });

    }

    }

    `

相关推荐
程与留2 小时前
15_国际化和本地化:tr()、ts 文件、QM 文件、多语言切换
c++·qt
程与留4 小时前
14_Qt 样式表(QSS)入门(语法、选择器、美化实战)
c++·qt
Quz11 小时前
QML 拖拽篇:接收拖拽与数据交换
qt
Interview Aid11213 小时前
TikTok OA 四题分享|半小时内 AC,题目基本都是实现题
java·开发语言·算法·面试·职场和发展
CoderIsArt20 小时前
C#中UI 线程与 Dispatcher
开发语言·ui·c#
AI情绪识别开源1 天前
检信 ALLEMOTION OS 加密打包可执行程序 — 全面测试报告版本: v1.3功能测试 / 性能测试 /
开发语言·数据结构·人工智能·功能测试
「QT(C++)开发工程师」1 天前
C++ auto 用法详解
开发语言·c++
OPEN-F1 天前
C++STL教程:容器适配器与实用工具
开发语言·c++
yaoxin5211231 天前
507. Java 反射 - 在 BeanFactory 中实现依赖注入
java·开发语言