С использованием Tkinter нужно сделать опросник без использования всплывающих окон для ввода информации
Идея такая - на форме размещаются
1) метка, текст которой меняется в зависимости от вариантов ранее выбранных ответов
2) список, элементы которого также меняются в зависимости от ранее полученных ответов
Хотелось бы получить следующее:
- при нажатии на кнопу запускается функция , в которой пользователю задаются вопросы, а отвечать он должен совершая двойной щелчок по списку.
Но так сделать не получается.
#!/usr/bin/env python3 # -*- coding: utf-8 -*- from tkinter import * class main: def __init__(self,master): self.master = root self.master.fromtask = False # self.master.fromtask принимает значение True во время выполнения функции Do self.quest = Label(self.master) self.butt = Button(self.master,text='Do',command=self.do) self.varList = Listbox(self.master) self.quest.pack() self.varList.pack() self.butt.pack() self.varList.bind('<Double-1>',self.lbmouse) #заполняем список какими-то исходными значениями: for i in range(15): self.varList.insert (END,i) self.master.mainloop() def varListClear(self): # для периодической очистки списка вариантов self.varList.delete(0,END) def lbmouse (self,event): if self.master.fromtask: #Двойной щелчок во время выполнения функции Do print ('Функция Do выполняется') def do (self): self.master.fromtask = True self.quest['text'] = 'Вопрос 1' if self.varList()[0] == 1: self.quest['text'] = 'Тогда Вариант 1' self.varListClear() # заполняем список новыми значениями: for x in range (5): self.varList.insert() if self.varList()[0] == 1: self.quest['text'] = 'Тогда вариант 1.1' else: self.quest['text'] = 'Тогда вариант 1.2' elif self.varList()[0] == 3: self.quest['text'] = 'Тогда Вариант 2' self.master.fromtask = False root=Tk() main(root)