如何在“ QSettings”中保存/更改“ QLineEdit”的文本并进行“ QPushButton的调用”

时间:2019-08-06 13:22:09

标签: python pyside2 qsettings

我想在我的应用中保存/更改“ QLineEdit”文本,然后在特定位置使用“ QPushButton”再次获取。

1 个答案:

答案 0 :(得分:0)

逻辑是将信息与键相关联,在下面的示例中,我演示了如何在修改文本后保存文本,然后按按钮检索文本。

from PySide2 import QtCore, QtWidgets


class Widget(QtWidgets.QWidget):
    def __init__(self, parent=None):
        super().__init__(parent)

        self.m_le = QtWidgets.QLineEdit()
        self.m_le.textChanged.connect(self.onTextChanged)
        self.m_button = QtWidgets.QPushButton("Press Me")
        self.m_button.clicked.connect(self.onClicked)

        lay = QtWidgets.QVBoxLayout(self)
        lay.addWidget(self.m_le)
        lay.addWidget(self.m_button)

    @QtCore.Slot(str)
    def onTextChanged(self, text):
        settings = QtCore.QSettings()
        settings.setValue("text", text)

    @QtCore.Slot()
    def onClicked(self):
        settings = QtCore.QSettings()
        text = settings.value("text")
        print(text)


if __name__ == "__main__":
    import sys

    app = QtWidgets.QApplication(sys.argv)
    w = Widget()
    w.show()
    sys.exit(app.exec_())