Как сбросить FileBrowse или установить FileBrowse на заданный путь в PySimple GUI? - PullRequest
0 голосов
/ 09 июля 2020

Я использую PySimple GUI. У меня есть следующий фрагмент:

import PySimpleGUI as sg


layout = [[sg.Text('File', size=(4, 1)), sg.Input(key="-FILE-", default_text="browse!", size=(128, 2)), sg.FileBrowse()],
          [sg.Button("Select file", key="-SELECT_FILE-"), sg.Button("Cancel", key="-SELECT_CANCEL-")]]

window = sg.Window('test reset browse', layout)

while True:
    event, values = window.read()

    if event == "-SELECT_CANCEL-":
        window.FindElement("-FILE-").Update("cancel!")
        # I want to reset also the FileBrowse initial path

    if event == sg.WIN_CLOSED:
        break

Есть идеи, как сбросить / установить на заданный путь FileBrowse при отмене (строка комментария)?

Или сформулировать иначе:

  • с учетом того, что для выбора пути использовался обзор
  • с учетом нажатия кнопки отмены

как:

  • сбросить путь к исходному пути, который был предложен при самом первом запуске просмотра

ИЛИ

  • как вручную установить новый начальный путь для следующего просмотр

?

1 Ответ

0 голосов
/ 10 июля 2020

Вот значения по умолчанию для Sg.FileBrowse. Как видите, вы можете использовать параметр initial_folder. Я бы посоветовал вам использовать это.

def FileBrowse(button_text='Browse', target=(ThisRow, -1), file_types=(("ALL Files", "*.*"),), initial_folder=None,
               tooltip=None, size=(None, None), auto_size_button=None, button_color=None, change_submits=False,
               enable_events=False, font=None, disabled=False,
               pad=None, key=None, metadata=None):
...