1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
# -*- coding: utf-8 -*-
import sys
import os
from PyQt4 import QtCore, QtGui
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.resize(563, 562)
self.centralwidget = QtGui.QWidget(MainWindow)
self.gridLayout = QtGui.QGridLayout(self.centralwidget)
self.tree = Tree(self, self.centralwidget)
self.tree.headerItem().setText(0, "1")
self.gridLayout.addWidget(self.tree, 0, 0, 1, 1)
MainWindow.setCentralWidget(self.centralwidget)
self.tree.walk_into_tree()
class Tree(QtGui.QTreeWidget):
def __init__(self, main, parent=None):
super(Tree, self).__init__(parent)
self.main = main
self.setColumnCount(3)
self.setAlternatingRowColors(True)
self.setSelectionMode(QtGui.QAbstractItemView.MultiSelection)
items = [["Alpha", ["Beta"]], ["Gama", ["Delta", "Eta"]], ["Iota", ["Mu", "Nu"]]]
for item in items:
p = QtGui.QTreeWidgetItem(self)
p.setText(0, item[0])
for i in item[1]:
c = QtGui.QTreeWidgetItem(p)
c.setText(1, i)
def walk_into_tree(self):
it = QtGui.QTreeWidgetItemIterator(self)
while it.value() is not None:
print it.value().text(0)
print "\t", it.value().text(1)
it += 1
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
MainWindow = QtGui.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_()) |