class CustomerForm(QWidget): def __init__(self, parent=None, dataProvider=None): super().__init__() self.ui = Ui_CustomerForm() self.ui.setupUi(self) self.ui.pbSave.clicked.connect(self.write) self.ui.pbLoad.clicked.connect(self.read) self._data_provider = dataProvider def write(self): data = [(field.objectName(), field.text()) for field in self.findChildren(QLineEdit)] self._data_provider.write(data) self.close() def read(self): # from PyQt5.QtCore import pyqtRemoveInputHook # pyqtRemoveInputHook(); import ipdb; ipdb.set_trace() data = self._data_provider.read() for item in data: child = self.findChild(QLineEdit, item[0]) if child: child.setText(item[1])
def __init__(self, parent=None, dataProvider=None): super().__init__() self.ui = Ui_CustomerForm() self.ui.setupUi(self) self.ui.pbSave.clicked.connect(self.write) self.ui.pbLoad.clicked.connect(self.read) self._data_provider = dataProvider