1
我試圖把一個信息彈出窗口向用戶告知他正在創建一個文件,他必須等待它的創建,直到。我有一個master
框架,它會創建一個popup
窗口,其中顯示帶有消息的Progressbar
。在系統上創建文件後,必須銷燬此popup
窗口。保持Tkinter的進度運行,直到一個文件被創建
這是我的嘗試:
import os
from Tkinter import *
import ttk
class UI(Frame):
def __init__(self,master):
Frame.__init__(self, master)
self.master = master
self.initUI()
def initUI(self):
popup = Toplevel(self)
txt = Label(popup, text="Please wait until the file is created").grid(row=0, column=0)
progressbar = ttk.Progressbar(popup, orient=HORIZONTAL, length=200, mode='indeterminate')
progressbar.grid(row=1, column=0)
progressbar.start()
self.checkfile()
progressbar.stop()
popup.destroy()
def checkfile(self):
while os.path.exists("myfile.txt") == False:
print "not created yet"
if __name__ == "__main__":
root = Tk()
aplicacion = UI(root)
root.mainloop()
的問題是,從使用者介面取得的凍結,我看不到任何窗口。我想我必須用Threads
來解決這個問題吧?我是否需要製作兩個線程,一個用於UI,另一個用於checkfile
函數,或者用一個就足夠了?
這將不勝感激,如果有人可以在Threads
添加到我的代碼,使其工作,因爲我從來沒有使用它們,我完全失去了。
在此先感謝。
我有同樣的問題。什麼是'自我'?我根本找不到答案! –
@LukeDinkler,我建議你閱讀[**類 - Python教程**](https://docs.python.org/2/tutorial/classes.html)。簡而言之,'self'是實例方法的第一個參數。 – falsetru