class MyWidget(QtGui.QWidget): def __init__(self,parent=None): QtGui.QWidget.__init__(self,parent) #self._table = QtGui.QTableView(self) self._table = QtGui.QTreeView(self) self.button = QtGui.QPushButton('нажми что ли',self) vbox_layout = QtGui.QVBoxLayout() vbox_layout.addWidget(self._table) vbox_layout.addWidget(self.button) self.setLayout(vbox_layout) #list_string= QtCore.QString() self._entity_manager = EntityManager('/tmp/tmp') self.list_tag = ['tag1','tag2','tag3'] # for tag in self._entity_manager.getListTags(): # self.list_tag.append(tag[0]) self.list_entityes = [] for file in self._entity_manager.searchEntityBySQL('SELECT file_path FROM entity'): self.list_entityes.append(file[0]) self.model = TagViewModel(self.list_tag) self.model = FieldViewModel(self.list_tag) #self.model.rowCount() self._table.setModel(self.model) self.connect(self.button,QtCore.SIGNAL('clicked()'),self.tmp) self.connect(self._table,QtCore.SIGNAL('clicked(QModelIndex)'),self.tmp2) label = QtGui.QLabel() label.setText('asdfasdf') header = QtGui.QHeaderView(QtCore.Qt.Vertical,label) #self._table.setVerticalHeader(header) def tmp(self): # self.model.setRowCount(self.index) # self.index+=1 pass def tagCount(self): return len(self.list_tag) def tmp2(self,index): row = index.row() if row<self.tagCount(): print('tag') selected_tag = self.model.item_data(index) request = "SELECT * FROM tag WHERE name='"+selected_tag+"'" print(request) self.list_tag = self._entity_manager.getListTags(request) #self.model.selectedItem(self.model.item_data(index)) else: print('entitye') # #if row.data. pass