按下时Tkinter按钮卡住/冻结,直到执行所有命令

时间:2016-01-29 09:32:49

标签: python python-2.7 button tkinter

刚开始使用Tkinter并仅发布代码片段。 labelbutton分别是LabelButton个类对象。

第一次按下按钮on_button_click_organisation时会调用button更改on_button_click_compute配置,现在当我们点击它时main被调用,预计会执行一次通过 def on_button_click_organisation(self): self.organisation_file = askopenfilename(filetypes=[("*.csv", "CSV")]) print("Organisation File : " + self.organisation_file) self.label.config(text = "Start Code") self.button.config(text = "START", command = self.on_button_click_compute) def on_button_click_compute(self): self.label.config(text = "Wait..\nResult being computed\n(Might take up to 15 minutes)") self.button.config(state = DISABLED) #Time taking task main(self.filename, self.organisation_file, self.result_folder) sleep(5) #To mimic time taking main() if main() returns in less time self.button.config(state = NORMAL) self.label.config(text = "Done..\nCheck the Result Folder") self.button.configure(text = "Finish", command=root.quit()) 方法执行操作。

但是GUI会一直停滞,直到main()结束。如何停止此操作并在计算main()之后恢复执行时使按钮处于活动状态,并在此之前处于非活动状态?

{{1}}

0 个答案:

没有答案