在pysimplegui打开时读取json的值并写入到窗口中
时间: 2024-03-12 19:47:28 浏览: 114
基于 C++构建 Qt 实现的 GDAL 与 PROJ4 的遥感图像处理软件课程设计
在PySimpleGUI中打开窗口时读取JSON的值并写入到窗口中,可以使用Python内置的`json`模块来读取JSON文件,并使用PySimpleGUI的`sg.Input()`方法来创建输入框,将读取到的值填入输入框中。以下是一个示例代码:
```python
import json
import PySimpleGUI as sg
# 读取JSON文件
with open('data.json', 'r') as f:
data = json.load(f)
# 创建PySimpleGUI的布局
layout = [
[sg.Text('Name:'), sg.Input(data['name'])],
[sg.Text('Age:'), sg.Input(data['age'])],
[sg.Text('Email:'), sg.Input(data['email'])],
[sg.Button('Save')]
]
# 创建窗口
window = sg.Window('My window', layout)
# 进入事件循环
while True:
event, values = window.read()
if event == sg.WINDOW_CLOSED:
break
elif event == 'Save':
# 保存输入框的值到JSON文件
data['name'] = values[0]
data['age'] = values[1]
data['email'] = values[2]
with open('data.json', 'w') as f:
json.dump(data, f)
# 关闭窗口
window.close()
```
在上面的代码中,我们首先使用`json.load()`方法读取JSON文件,然后使用读取到的值创建PySimpleGUI的布局。在输入框中,我们使用`data['name']`、`data['age']`、`data['email']`来填写默认值。当用户点击“Save”按钮时,我们从输入框中读取值,然后使用`json.dump()`方法将新的值保存到JSON文件中。最后,我们调用`Window`的`close()`方法来关闭窗口。
阅读全文