2
- 1 2 3
1 a b c
2 d e f
3 g h i

点击1选择a、b、c时,tableWidget发送什么信号。

我只在 C 中找到了答案(我认为无论如何都是这个问题的答案)。下面是

connect( (QObject*) this->verticalHeader(), SIGNAL( sectionClicked(int) ), this, SLOT( rowSelection( int ) ) );

我试图像这样在python中实现它:

self.QTableWidget.verticalHeader.sectionClicked.connect(self.Test)

但它说verticalHeader 没有属性sectionClicked。

4

1 回答 1

3

我认为发出的信号是正确的,但是您的代码不太正确。以下小例子似乎对我有用:

from PySide import QtGui
import sys

class W(QtGui.QTableWidget):
    def __init__(self):
        super(W,self).__init__(3, 3)

        self.verticalHeader().sectionClicked.connect(self.onSectionClicked)

    def onSectionClicked(self, logicalIndex):
        print("onSectionClicked:", logicalIndex)


if __name__ == "__main__":
    app = QtGui.QApplication(sys.argv)
    w = W()
    w.show()
    sys.exit(app.exec_())

因此,从 QTableWidget 实例中,您需要通过调用 获取垂直标题对象,该对象具有您提到verticalHeader()的信号。sectionClicked

于 2013-10-09T18:34:23.817 回答