pyqt Qtreewidget标头不发出信号。
import sys
from PyQt4 import QtGui, QtCore
class mainwin(QtGui.QWidget):
def __init__(self, parent = None):
QtGui.QWidget.__init__(self, parent)
self.list = QtGui.QTreeWidget()
self.list.setHeaderLabels(["Raton", "name", "address"])
self.head = QtGui.QHeaderView(QtCore.Qt.Horizontal)
self.head.setClickable(True)
self.list.setHeader(self.head)
self.head.sectionClicked.connect(self.test)
def test(self):
print("ok")
当我点击标题时没有任何反应。但。
self.list.header().setClickable(True)
self.list.header().sectionClicked.connect(self.test)
它的工作。为什么?上面的代码中有什么问题?(QtGui.QHeaderView())
setClickable
应该在setHeader
之后召唤。
self.list.setHeader(self.head)
self.head.setClickable(True)
self.list.setHeader(..)
让self.head
无法点击。
UPDATE
setClickable
已经过时了。请改用setSectionsClickable
。