GUI не отвечает, созданный PySimpleGUI27
Я использую PySimpleGUI27
создать простую программу с графическим интерфейсом. Эта программа принимает 3 файла в качестве входных данных и когда пользователь нажимает на Submit
Кнопка затем вызывает мою функцию парсера. Эта программа работает очень хорошо. Единственная проблема у меня в том, что я получаю Not Responding GUI for few seconds
после того, как я нажму кнопку "Отправить". Сообщение "Не отвечает" отображается в заголовке окна следующим образом: A2L Parser(Not Responding)
После прочтения PySimpleGUI27
кулинарную книгу я узнал, что мне придется window.Refresh()
но я не могу понять, куда именно я должен положить window.Refresh()
в моем коде. Ниже мой код:
import PySimpleGUI27 as sg
import parse
layout = [
[sg.Text('A2L File', size=(15, 1), auto_size_text=False, justification='right'),
sg.InputText('',key='_a2l_'), sg.FileBrowse(file_types=(("A2L File", "*.a2l"),))],
[sg.Text('Signals Lexicon', size=(15, 1), auto_size_text=False, justification='right'),
sg.InputText('',key='_sigLex_'), sg.FileBrowse(file_types=(("Excel File", "*.xlsx"),))],
[sg.Text('Parameters Lexicon', size=(15, 1), auto_size_text=False, justification='right'),
sg.InputText('',key='_parLex_'), sg.FileBrowse(file_types=(("Excel File", "*.xlsx"),))],
[sg.Submit(), sg.Cancel()],
[sg.Multiline(default_text='', size=(65, 10),key='_debug_')]
]
window = sg.Window('A2L Parser', default_element_size=(40, 1)).Layout(layout)
values_dict={}
while True:
button, values_dict = window.Read()
#if button=="Cancel" or not any(value == '' for value in values_dict.values()):
# break
if button=="Cancel" or button is None:
break
elif button=='Submit' and (not any(value == '' for value in values_dict.values())):
parse.parser(values_dict['_a2l_'], values_dict['_sigLex_'], values_dict['_parLex_'])
else:
sg.Popup("Please select files")
window.Element('_debug_').Update('1')
print values_dict
print button
window.Close()
Может ли кто-нибудь помочь мне с этой не отвечающей проблемой?