通过单击水平标题发出信号pyqt排序qtablewidget

时间:2015-11-24 17:32:21

标签: python qt pyqt

我有一个QTableWiget的子类。我可以通过单击水平标题对此表进行排序。现在我还想在表被排序时发出一个信号,所以我重载了基类的方法sortItems:

def sortItems(self, col, order):
    super(CustomTable, self).sortItems(col, order)  # CustomTable is my subclass
    self.sort_items.emit(col)

之后,我有一个方法来处理sort_items信号,比如打印列,但它不起作用,没有打印任何东西。 (我也为子类设置了sortingEnable ......)

我也尝试另一种方式。这是horizo​​ntalHeader sectionClicked信号,它工作,但有时窗口不是焦点,单击水平标题,但表没有排序。

所以,我的问题是QTableWidget在排序时调用sortItems吗?以及如何解决这个问题,make emit sort_items信号有效吗?

感谢您的帮助,对不起我的英语不好。

1 个答案:

答案 0 :(得分:0)

(1)不,无论如何它都没有帮助 - sortItems不是虚拟的,所以覆盖它将无效。

(2)您可以尝试连接水平标题的sortIndicatorChanged信号。