Q
T
r
e
e
W
i
d
g
e
t
QTreeWidget
QTreeWidget
默认全部展开
self.tree.expandAll()
为树节点添加响应事件
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import QIcon, QBrush, QColor
from PyQt5.QtCore import Qt
class TreeWidgetDemo(QMainWindow):
def __init__(self, parent=None):
super(TreeWidgetDemo, self).__init__(parent)
self.setWindowTitle('TreeWidget 例子')
self.tree=QTreeWidget()
self.tree.setColumnCount(2)
self.tree.setHeaderLabels(['Key','Value'])
root=QTreeWidgetItem(self.tree)
root.setText(0,'Root')
root.setIcon(0,QIcon('./images/root.png'))
brush_red=QBrush(Qt.red)
root.setBackground(0,brush_red)
brush_blue=QBrush(Qt.blue)
root.setBackground(1,brush_blue)
self.tree.setColumnWidth(0,150)
child1=QTreeWidgetItem()
child1.setText(0,'child1')
child1.setText(1,'ios')
child1.setIcon(0,QIcon('./images/IOS.png'))
child1.setCheckState(0,Qt.Checked)
root.addChild(child1)
child2=QTreeWidgetItem(root)
child2.setText(0,'child2')
child2.setText(1,'')
child2.setIcon(0,QIcon('./images/android.png'))
child3=QTreeWidgetItem(child2)
child3.setText(0,'child3')
child3.setText(1,'android')
child3.setIcon(0,QIcon('./images/music.png'))
self.tree.addTopLevelItem(root)
self.tree.clicked.connect(self.onClicked)
self.tree.expandAll()
self.setCentralWidget(self.tree)
def onClicked(self,qmodeLindex):
item=self.tree.currentItem()
print('Key=%s,value=%s'%(item.text(0),item.text(1)))
if __name__ == '__main__':
app = QApplication(sys.argv)
tree = TreeWidgetDemo()
tree.show()
sys.exit(app.exec_())