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

Posted

技术标签:

【中文标题】如何在“QSettings”中保存/更改“QLineEdit”的文本并进行“QPushButton”调用【英文标题】:How to save/change text of 'QLineEdit' in 'QSettings' and get on 'QPushButton's' call 【发布时间】:2019-08-06 13:22:09 【问题描述】:

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

【问题讨论】:

【参考方案1】:

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

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_())

【讨论】:

以上是关于如何在“QSettings”中保存/更改“QLineEdit”的文本并进行“QPushButton”调用的主要内容,如果未能解决你的问题,请参考以下文章

如何将自定义类型保存到 QSettings?

QSettings():如何保存到当前工作目录

如何使用 QSettings 保存和加载数据?

以人类可读的形式在 QSettings 中保存自定义 QMap 模板实例化

QSettings 中的值更改时的事件?

从 Play 商店更新我的应用程序后,如何在 Android 上保存 QSettings 文件的内容以使其可读?