我有一个水平标题,我将其设置为捕捉右键单击,如下所示:
self.horizontalHeader.setContextMenuPolicy(Qt.CustomContextMenu)
self.horizontalHeader.customContextMenuRequested.connect(self.callFilter)
我想知道右键单击的是标题的哪一列。我可以通过 self.horizontalHeader.viewport()
获取位置,但我被困在那里。将标题中的位置转换为标题表中的位置似乎不够优雅。有没有更好的方法来捕获右键点击,或者有更好的方法来找到点击的位置?
最佳答案
logicalindexAt
将返回列号,如果它是水平标题:
def callFilter(self, pos):
column = self.horizontalHeader.logicalIndexAt(pos)
关于python - PyQt- 哪一列获得了右键单击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8791808/