QT QTreeWidget创建右键菜单,捕获光标位置,父子窗口参数传递,设计属性表

本文介绍了在QT环境下,如何在QTreeWidget上创建右键菜单,捕获光标位置,并将相关信息传递给子窗口。通过在父窗口中声明子窗口类,设置信号和槽,实现菜单项的点击响应。同时详细阐述了如何在选择QTreeWidgetItem后,将参数传递给属性窗口,以便根据选中项显示相应的属性信息。
摘要由CSDN通过智能技术生成

在做属性表的时候,需要父窗口捕获光标位置,并将信息传给子窗口做后续处理。这里遇到了瓶颈,幸运的是最后解决了。方法肯定不止这一种,今天写下来只是希望给大家做个参考。
我的操作对象是TreeWidget控件,但是TableWidget等其他widget控件也可以通过这种思路进行实现。
在这里插入图片描述
在这里插入图片描述

首先,在含有treewidget的父窗口头文件中声明子窗口类,方便后期对其使用:

#include "menu_attribute.h"

在父窗口类的.h文件中,有以下信号和槽以及其他成员:

signals:
    void trans(QTreeWidgetItem*);

private slots:
    
    void on_treeWidget_customContextMenuRequested(const QPoint &pos);

    void on_treeWidget_itemSelectionChanged();

    void on_attri_menu();

private:
    Ui::xml *ui;
    QMenu *m_pmenu;
    QAction *attri_menu;

    menu_attribute *menu_attri;

下面是在父窗口的.cpp文件中的代码实现。在QMenu类型的右键菜单中添加自定义的QAction,可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值