Я использую графический интерфейс tkinter python 2.7 на Raspberry Pi для автоматизации тестирования некоторых материалов. Для тестирования необходимо протестировать несколько образцов, и для замены образцов требуется время. Я хочу вывести текст, говорящий что-то вроде «Пожалуйста, вставьте образец, затем нажмите клавишу ввода на клавиатуре» и приостановите функцию до тех пор, пока не будет нажата клавиша ввода. Вместо нажатия клавиши ввода я также мог бы использовать кнопку tkinter. Есть идеи без использования внешних библиотек? Я пробовал цикл while, в котором я пытаюсь выйти из цикла после нажатия кнопки, но поскольку цикл запущен, кнопка не регистрируется.
Пример кода (удалено много кода и оставлено то, что актуально):
class App:
def __init__(self,master):
#self.WILTRON = Wiltron_54128A_GPIB()
self.var = tk.StringVar()
self.var.trace("w",self.getTest)
self.okbutton = tk.IntVar()
self.okbutton.trace("w",self.OKbutton)
frame = Frame(master)
frame.pack()
#Initial GUI values
self.var.set('Choose Test')
testChoices = ['TEST']
App.testOption = tk.OptionMenu(frame, self.var, *testChoices)
App.testOption.grid(row=0, column=0)
okButton = tk.Button(frame, text=" OK ", command=self.OKbutton).grid(row=2, column=1)
#Test routine functions
def getTest(self, *args):
test = self.var.get()
sf = "IC Network Analyzer"
root.title(sf)
#####
if test == "TEST":
sample1 = self.WILTRON.Sample_Data()
print 'Change out sample then press OK'
#This is where I need to pause until the next sample has been inserted
sample2 = self.WILTRON.Sample_Data()
#ect.
#####
def OKbutton(self):
#Whatever I need to do to make the button exit the pause