Как сохранить последний выбранный файл из sg.filebrowser в default_text из sg.InputText? - PullRequest
0 голосов
/ 27 мая 2020

Во-первых, PySimple GUI великолепен !!

Как сохранить последний выбранный файл в sg.filebrowser, чтобы при следующем запуске скрипта этот файл был значением по умолчанию в default_text из sg.InputText?

Сегодня у меня это:

import PySimpleGUI as sg

layout = [  
            [sg.Text('Selecione o Arquivo Executável na Pasta de Instalação               '), sg.InputText(default_text='' key='EXE_SPED'), sg.FileBrowse(button_text='Selecione')],
            [sg.Text('Selecione a Pasta Com os Arquivos .REC e .TXT                                '), sg.InputText(key='PASTA_ARQUI'), sg.FolderBrowse(button_text='Selecione')],
            [                                   sg.Button('OK'), sg.Button('CANCELAR')]]

Window = sg.Window('Print Folder  --  Versão 1.0', layout=layout)

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

    if event in (None, 'CANCELAR'): # if user closes window or clicks cancel
        break
    if event == 'OK':
       print(Pvalues['EXE_SPED'])

Представьте, что я выбрал файл C: \ Users \ Felipe \ Downloads \ Output.txt, нажал ОК, программа была выполнена, а затем закрылось окно. Итак, я снова открыл программу, и она будет такой:

import PySimpleGUI as sg

layout = [  
            [sg.Text('Selecione o Arquivo Executável na Pasta de Instalação               '), sg.InputText(default_text='C: \ Users \ Felipe \ Downloads \ Output.txt' key='EXE_SPED'), sg.FileBrowse(button_text='Selecione')],
            [sg.Text('Selecione a Pasta Com os Arquivos .REC e .TXT                                '), sg.InputText(key='PASTA_ARQUI'), sg.FolderBrowse(button_text='Selecione')],
            [                                   sg.Button('OK'), sg.Button('CANCELAR')]]

Window = sg.Window('Print Folder  --  Versão 1.0', layout=layout)

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

    if event in (None, 'CANCELAR'): # if user closes window or clicks cancel
        break
    if event == 'OK':
       print(values['EXE_SPED'])

Есть ли способ сделать это, не сохраняя значение в другом файле (например, в текстовом файле)?

...