runcode
@runcode

Как реализовать настройки для таблицы?

from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QTableWidgetItem, QMainWindow, QApplication, QTableWidget


class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        self.tablewidget = QTableWidget(4, 1)
        self.setCentralWidget(self.tablewidget)

        for row in range(4):
            item = QTableWidgetItem("index_" + str(row))
            item.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled)
            item.setCheckState(Qt.Unchecked)
            self.tablewidget.setItem(row, 0, item)

        self.tablewidget.cellChanged.connect(self.onCellChanged)

    def onCellChanged(self, row, column):
        item = self.tablewidget.item(row, column)
        print(item.text())

if __name__ == '__main__':
    import sys
    app = QApplication(sys.argv)
    w = MainWindow()
    w.show()
    sys.exit(app.exec_())


Есть таблица с checkbox , как сохранить при закрытие состояние их в файл setting.ini и потом подгрузить? Спасибо.
  • Вопрос задан
  • 314 просмотров
Пригласить эксперта
Ответы на вопрос 2
Разделите отображение и данные. Храните чекбоксы в отдельном объекте, при изменениях на UI обновляйте состояние этих флагов.
А чтение/запись ini-файлов через https://docs.python.org/3/library/configparser.html можно сделать
Ответ написан
Комментировать
@bbkmzzzz
Как вариант можете использовать QtCore.QSettings
Инициализируйте для работы с ini:
QSettings("path_to_ini_file", QSettings,IniFormat)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы