Reputation: 428
pyqt Treewidget header is not emitting signal.
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")
when i clicked on header nothing happens. but.
self.list.header().setClickable(True)
self.list.header().sectionClicked.connect(self.test)
its working. Why ? whats wrong in my above code?(QtGui.QHeaderView())
Upvotes: 2
Views: 811
Reputation: 368954
setClickable
should called after setHeader
.
self.list.setHeader(self.head)
self.head.setClickable(True)
self.list.setHeader(..)
make self.head
unclickable.
UPDATE
setClickable
is obsolete. Use setSectionsClickable
instead.
Upvotes: 3