def __init__(self, parent=None): super(MainWindow, self).__init__(parent) self.mainwindow = Ui_MainWindow() self.mainwindow.setupUi(self) it1 = Category(title='it1') it2 = Page('it2', 'This is it2\'s content') it3 = Page('it3', 'This is it3\'s content') it1.setChild(it1.rowCount(), it2) it1.setChild(it1.rowCount(), it3) model = QStandardItemModel() model.appendRow(it1) tv = self.mainwindow.treeView tv.setModel(model) tv.setRootIsDecorated(True) tv.setSelectionMode(QAbstractItemView.SingleSelection) tv.setSelectionBehavior(QAbstractItemView.SelectItems) tv.clicked.connect(self.printData)