使用场所几何管理器移动Toplevel

时间:2016-01-18 13:30:05

标签: python tkinter

创建应用程序并在屏幕上显示后,是否可以将应用程序移动到屏幕上的其他位置?

我有一个库函数可以放置应用程序或像这样的Toplevel框架

def create_top_window(master, node, center=True):
    if not master:
        master = TK.Toplevel()
    if center:
        center_window(master, node.width, node.height)
    node.widget = TK.Frame(master, relief=node.relief)
    node.widget.place(x=node.x, y=node.y,width=node.width, height=node.height)

def center_window(root, w=300, h=200): # Center main application window
    # set screen width and height
    ws = root.winfo_screenwidth()
    hs = root.winfo_screenheight()
    # calculate position x, y
    x = (ws/2) - (w/2)
    y = (hs/2) - (h/2)
    root.geometry('%dx%d+%d+%d' % (w, h, x, y))

该节点是一个对象,其他属性不是小部件所需的属性 - 并且将包含所需的应用程序大小。

我再次试着打电话,但没有做任何事情。 如何在程序中稍后更改屏幕上的位置?

1 个答案:

答案 0 :(得分:2)

place严格用于在其他小部件中定位小部件。

要移动顶层或根窗口,您可以使用geometry命令。例如,要将窗口移动到左上角,您可以执行以下操作:

root.geometry("+0+0")