Pyqt5在Qtableview上的菜单

某些场景下需要获取tableview数据,并从后台拉取数据,获取信息

self.tableView.setContextMenuPolicy(Qt.CustomContextMenu)
self.tableView.customContextMenuRequested.connect(self.ContextMenu)
    def ContextMenu(self):
        try:
            self.tableView.contextMenu = QMenu()
            pos = self.tableView.mapFromGlobal(QCursor.pos())  # 获取表格中鼠标坐标
            it = self.tableView.columnAt(pos.x())  # 根据鼠标坐标获取列号
            row = self.tableView.currentIndex().row()  # 获取行号
            model = self.tableView.model()
            it = 0
            Temp = model.item(row, it).text()  # 根据行号列号获取内容
            # print(Temp)
            rcontext = self.personinfo[Temp]
            self.tableView.contextMenu.addAction('出生日期: '+rcontext[0])
            self.tableView.contextMenu.addAction('性别: ' + rcontext[1])
            self.tableView.contextMenu.addAction('年龄: ' + rcontext[12])
            self.tableView.contextMenu.addAction('参加工作日期: ' + rcontext[2])
            self.tableView.contextMenu.addAction('进入电信系统日期: ' + rcontext[3])
            self.tableView.contextMenu.addAction('人员类别: ' + rcontext[4])
            self.tableView.contextMenu.addAction('岗位序列: ' + rcontext[5])
            self.tableView.contextMenu.addAction('岗位层级: ' + rcontext[6])
            self.tableView.contextMenu.addAction('岗位等级: ' + rcontext[7])
            self.tableView.contextMenu.addAction('最高学历: ' + rcontext[8])
            self.tableView.contextMenu.addAction('最高学历毕业学校: ' + rcontext[9])
            self.tableView.contextMenu.addAction('第一学历专业: ' + rcontext[10])
            self.tableView.contextMenu.addAction('专业技术职务名称: ' + rcontext[11])
            self.tableView.contextMenu.popup(QCursor.pos())
            self.tableView.contextMenu.show()
        except Exception as e:
            traceback.print_exc()
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值