def down_list(tree: QTreeWidget): selected = tree.currentItem() if selected: index = tree.indexOfTopLevelItem(selected) name = selected.text(0) desc = selected.text(1) data = selected.data(2, 2) new = QTreeWidgetItem([name, desc]) new.setData(2, 2, data) tree.takeTopLevelItem(index) tree.insertTopLevelItem(index + 1, new) tree.setCurrentItem(new)
def testSetItemWidget(self): treeWidget = QTreeWidget() treeWidget.setColumnCount(2) item = QTreeWidgetItem(['text of column 0', '']) treeWidget.insertTopLevelItem(0, item) # Adding QPushButton inside the method treeWidget.setItemWidget(item, 1, QPushButton('Push button on column 1')) # Getting the widget back w = treeWidget.itemWidget(treeWidget.itemAt(0, 1), 1) self.assertIsInstance(w, QPushButton) p = QPushButton('New independent button') # Adding QPushButton object from variable treeWidget.setItemWidget(item, 0, p) w = treeWidget.itemWidget(treeWidget.itemAt(0, 0), 0) self.assertIsInstance(w, QPushButton)