-
`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(); });
}
}`
-
`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(); });}
}
`
QT中treewidget中右键添加QAction方法
小c君tt2025-12-26 11:41