Событие Tkinter в привязке - PullRequest
0 голосов
/ 15 марта 2020

Привет, ребята, я пишу проект с Tkinter. Я использую привязку к классу. Это мой код класса: '

class QuestionsPage(tk.Frame):
   def __init__(self,parent,controller):
      self.controller = controller
      tk.Frame.__init__(self,parent,bd=5,relief = "groove",padx=20)
      global timer2
      global qr
      self.qlabel = tk.Label(self, text="", font = LARGE_FONT,wraplength=1000)
      self.qlabel.grid(row=3,column=0,sticky=N+S+E+W)
      ans1label = tk.Label(self, text="A  ",bg= 'red',font = LARGE_FONT)  
      ans1label.grid(row=5,column=0,sticky=W)
      self.ans1label2 = tk.Label(self, text = "", font = LARGE_FONT)
      self.ans1label2.grid(row=6,column=0,sticky=W)
      ans1labe2 = tk.Label(self, text="B  ",bg='blue',font = LARGE_FONT)
      ans1labe2.grid(row=7,column=0,sticky=W)
      self.ans1label22 = tk.Label(self, text = "", font = LARGE_FONT)
      self.ans1label22.grid(row=8,column=0,sticky=W)
      ans1labe3 = tk.Label(self, text="C  ",bg='green',font = LARGE_FONT)
      ans1labe3.grid(row=9,column=0,sticky=W)
      self.ans1label32 = tk.Label(self, text = "", font = LARGE_FONT)
      self.ans1label32.grid(row=10,column=0,sticky=W)
      ans1labe4 = tk.Label(self, text="D  ",bg='yellow',font = LARGE_FONT)
      ans1labe4.grid(row=11,column=0,sticky=W)
      self.ans1label42 = tk.Label(self, text = "", font = LARGE_FONT)
      self.ans1label42.grid(row=12,column=0,sticky=W)
      self.label2 = tk.Label(self, text="Timer",font = LLRAGE_FONT)
      self.label2.grid(row=1,column=0,sticky=N+S+E+W)
      self.label2 = tk.Label(self, text="",font = LLRAGE_FONT)
      self.label2.grid(row=2,column=0,sticky=N+S+E+W)
      self.remaining = 0
      self.bind("<<ShowFrame>>", self.runq)

'

, и это моя функция:

 def runq(self,event): 
      global Number_Questions
      global Showflag
      global pic
 if Number_Questions <= 5:
       if pic:
        load = Image.open(pic)
        load = load.resize((300,300),Image.ANTIALIAS)
        render = ImageTk.PhotoImage(load)
        img = Label(self,image=render)
        img.image = render
        img.grid(row=12,column=0,sticky=N+S+E+W)
       Number_Questions = Number_Questions+1
       self.countdown(5)
       self.after(questiontime,self.runq) 

Моя функция runq должна обновлять фрейм с новой информацией после 5 se c, говорите пять раз, но кадр не меняется. есть идеи?

...