加载Python GUI时显示图像

时间:2016-11-23 13:10:42

标签: python tkinter

我使用Tkinter,Python创建了一个可用的GUI界面。加载GUI需要一两个小步骤,我的问题如下:

当python在GUI上执行加载时,有没有显示图像?

非常感谢帮助。

1 个答案:

答案 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会告诉您如何在屏幕中居中。