Столкнулся с багом\фичей в виде незапланированной очистки таблицы QTableWidget и со сворачиванием всех списков в QTreeWidget и пропаданием фокуса с нужного элемента. Баг возникает при событии нажатия на элемент списка QComboBox (во второй таблице загружаются данные). Весь код наверное приводить не стоит, так как его очень много и вычленить что-то относящееся к проблеме сложно. Может есть какое-то очевидное решение?
Пробовал брать текущее значение в QTreeWidget и принудительно устанавливать, но что-то не срабатывает..
current_line = self.ui.line_recept_treeWidget.currentItem()
self.ui.line_recept_treeWidget.setCurrentItem(current_line)
Текущий Item берется верно, вот если бы происходило нажатие на него в QTreeWidget после выполнения функции события - это бы решило проблему... Как выполнить это нажатие?
Дерево реализовано так:
for line in lines_list:
if (line != '') and (line not in temp1):
temp1.append(line)
line_recept_tree = QTreeWidgetItem(self.ui.line_recept_treeWidget)
line_recept_tree.setText(0, line)
for ll in range(0, count_list):
recept_item_encrypt = self.decrypt(recept_list[str(ll + 1)]['current_recept'])
recept_line_encrypt = self.decrypt(recept_list[str(ll + 1)]['line_recept'])
recept_cost = self.decrypt(recept_list[str(ll + 1)]['cost_itog'])
if line == recept_line_encrypt:
recept = QTreeWidgetItem(line_recept_tree)
recept.setText(0, recept_item_encrypt)
recept.setText(1, recept_cost)