我使用Tkinter,Python创建了一个可用的GUI界面。加载GUI需要一两个小步骤,我的问题如下:
当python在GUI上执行加载时,有没有显示图像?
非常感谢帮助。
答案 0 :(得分:2)
根据评论中的建议,您可以使用TopLevel显示另一个窗口。
您可以使用<NameOfYourTopLevel>.overrideredirect(1)
隐藏窗口框架。
一旦GUI完成加载,您也可以考虑使用.after_idle(<callback>)
关闭窗口。
这是更完整的例子。我还没有能够复制绘制GUI的大延迟,所以用self.after(5000,self.splash.destroy)
模拟了这个。您应该能够将其替换为self.after_idle(self.splash.destroy)
try:
import tkinter as tk
except:
import Tkinter as tk
class App(tk.Frame):
def __init__(self,master=None,**kw):
self.splash = Splash(root)
tk.Frame.__init__(self,master=master,**kw)
tk.Label(self,text="MainFrame").grid()
self.after(5000,self.splash.destroy)
class Splash(tk.Toplevel):
def __init__(self,master=None,**kw):
tk.Toplevel.__init__(self,master=master,**kw)
tk.Label(self,text="Show Image here").grid()
self.overrideredirect(1)
if __name__ == '__main__':
root = tk.Tk()
App(root).grid()
root.mainloop()
This question会告诉您如何在屏幕中居中。