pysimplegui 如何通过按钮重置filebrowse的默认路径,并在下次打开的时候,默认路径仍然是更改后的路径
时间: 2024-03-10 09:49:53 浏览: 53
要实现在下次打开窗口时默认路径仍然是更改后的路径,你需要将更改后的默认路径保存到文件中,并在下次打开窗口时从文件中读取并设置为 `FileBrowse` 的默认路径。
以下是一个示例代码,可以在按钮被点击时将 `FileBrowse` 的默认路径重置为指定的路径,并将更改后的默认路径保存到文件中:
```python
import PySimpleGUI as sg
DEFAULT_PATH_FILE = 'default_path.txt'
def save_default_path(path):
with open(DEFAULT_PATH_FILE, 'w') as f:
f.write(path)
def load_default_path():
try:
with open(DEFAULT_PATH_FILE, 'r') as f:
return f.read().strip()
except FileNotFoundError:
return ''
layout = [
[sg.Button('Reset FileBrowse Path')],
[sg.Text('FileBrowse'), sg.FileBrowse(default_path=load_default_path())],
[sg.Button('Close')]
]
window = sg.Window('Reset FileBrowse Path', layout)
while True:
event, values = window.read()
if event in (sg.WIN_CLOSED, 'Close'):
break
elif event == 'Reset FileBrowse Path':
file_browse = window.FindElement('FileBrowse')
file_browse.Update(default_path='/path/to/new/default/folder')
save_default_path('/path/to/new/default/folder')
window.close()
```
在上面的代码中,`load_default_path()` 函数会从文件中读取上次保存的默认路径,如果文件不存在则返回空字符串。在程序运行时,会先尝试从文件中读取默认路径并设置为 `FileBrowse` 的默认路径。当用户点击 `Reset FileBrowse Path` 按钮时,程序会将 `FileBrowse` 的默认路径重置为 `/path/to/new/default/folder`,并将更改后的默认路径保存到文件中。这样,在下次打开窗口时,程序会自动从文件中读取并设置为 `FileBrowse` 的默认路径。
阅读全文