【问题标题】:Showing Tkinter window larger than desktop显示大于桌面的 Tkinter 窗口
【发布时间】:2013-06-26 18:23:43
【问题描述】:

我需要显示我用 Tk() 创建的 Tkinter 窗口大于桌面,并移动到桌面之外的一些坐标。

不幸的是,当我这样做时:

root = tk.Tk()
root.geometry("%dx%d+%d+%d", (10000, 10000, -300, -300))

然后这个窗口出现,但在桌面上最大化。

当我首先显示窗口,然后调整大小/移动时,一切正常,但我不想看到一开始的小空窗口。

如何在窗口的开头显示坐标和大小?

【问题讨论】:

    标签: python tkinter tk


    【解决方案1】:

    这是一个例子:

    from Tkinter import Tk
    
    root = Tk()
    
    root.withdraw()
    root.update_idletasks()
    
    root.geometry("+-1000+-1000")
    root.minsize(2000, 2000)
    
    root.deiconify()
    
    root.mainloop()
    

    withdraw 隐藏窗口,deiconify 显示它。

    希望对您有所帮助。

    【讨论】:

    • 谢谢。它有效,但不完全。窗口比屏幕大,但左上角正好在左上角。窗口没有移动到 (-1000,-1000),而是移动到 (0,0)。
    • 嗯,看起来不同操作系统上的行为不同。例如,它适用于我的 ubuntu 12.04。在您注意到您已经找到移动窗口的方法的问题中,您能否在withdraw/deiconify 之间插入移动窗口的代码?
    • 我使用的是 Ubuntu 13.04。在 mainloop() 之前设置位置不起作用。它仅在我移动显示的窗口时才有效。
    • mainloop 通话后,您能否说明如何移动窗口?
    • 这可以将窗口移到桌面之外:gist.github.com/szymong/3d56488f7663bc3e8db3
    猜你喜欢
    • 2010-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-08
    • 2014-03-25
    • 1970-01-01
    • 1970-01-01
    • 2014-07-14
    相关资源
    最近更新 更多