首页 > 代码库 > qt model/view 架构基础介绍之QTreeWidget

qt model/view 架构基础介绍之QTreeWidget

# -*- coding: utf-8 -*-

# python:2.x

#说明:QTreeWidget用于展示树型结构,也就是层次结构同前面说的 QListWidget 类似,这个类需要同另外一个辅助类

# QTreeWidgetItem 一起使用。不过,既然是提供方面的封装类,即便是看上去很复杂的树,

# 在使用这个类的时候也是显得比较简单的

__author__ = ‘Administrator‘

from PyQt4.QtGui import  *

from PyQt4.Qt import *

from PyQt4 import QtGui, QtCore

from PyQt4.QtCore import *

import sys

class Painterd(QTreeWidget):

    def __init__(self):

        super(Painterd,self).__init__()

        self.setFixedSize(300,200)

        self.vector()

    def vector(self):

        treewindget=QTreeWidget(self)

 

        treewindget.setColumnCount(1)

        root=QTreeWidgetItem(treewindget,QStringList(QString(‘Root‘)))#根节点

        QTreeWidgetItem(root,QStringList(QString(‘leat 1‘)))#子节点

        leaf2=QTreeWidgetItem(root,QStringList(QString(‘leat 2‘)))#子节点

        leaf2.setCheckState(0,Qt.Checked)#复选

        headres=[‘name‘,‘number‘]

        rootlist=QTreeWidgetItem(treewindget)

        rootlist.setText(1,‘0‘)

        treewindget.setHeaderLabels(headres)#树的表头

        treewindget.addTopLevelItem(rootlist)

        #如果你不需要显示这个表头,可以调用 setHeaderHidden()函数将其隐藏。

def main():

    app = QtGui.QApplication(sys.argv)

    ex =Painterd()

    ex.show()

    sys.exit(app.exec_())

if __name__ == ‘__main__‘:

    main()

如图: