【发布时间】:2016-11-08 00:38:43
【问题描述】:
嗯,好的,朋友们,现在我正在尝试为我的应用程序中的每个表格添加“导出到 Excel”功能,如下所示:
...
def update_exportable_tables(self, *window):
"""
Please don't ask why, here 'I know what I'm doing'
"""
if not window:
window = self.window
for obj in window.__dict__:
objname = obj.title().lower()
the_object_itself = window.__dict__[obj]
if isinstance(the_object_itself, (QTableWidget, QTableView)):
the_object_itself.setContextMenuPolicy(Qt.CustomContextMenu)
the_object_itself.customContextMenuRequested.connect(self.TableContextEvent)
def TableContextEvent(self, event):
menu = QMenu()
excelAction = menu.addAction(u"Export to Excel")
excelAction.triggered.connect(self.export)
action = menu.exec_(QCursor.pos())
def export(self):
print 'Here I should do export'
...
是的,它工作正常,但是....问题是我应该如何将点击的表格实例传递给我的 export() 函数?
【问题讨论】:
-
您可以使用变量来记住“活动”表。您可以在
TableContextEvent中查看event参数中的内容, -
@furas 事件是 PyQt4.QtCore.QPoint(),仅此而已。
标签: python python-2.7 qt pyqt pyqt4