簡體   English   中英

創建python后如何使用python移動tkinter窗口?

[英]How to move tkinter windows using python after it has been created?

創建后,我希望將tkinter窗口移動到不同的x和y坐標。 例如,創建窗口后5秒鍾,將其移至
X = ??? 和y = ???。

 from tkinter import*

root = Tk()
root.title("lol")
root.geometry("300x300")

photo = PhotoImage(file="pepe.gif")
label = Label(image=photo).place(x=10, y=10)

root.mainloop()

上面的代碼僅是示例,如何對其進行修改以自行移動?

本示例將向您展示如何重設控制窗口在屏幕上位置的根幾何。 單擊圖像將切換窗口的位置。

from tkinter import *

def move_me(idx=[0]):   # <- creates a closure for the index of the location strings
    loc = ["300x300+200+200", "300x300+300+300"]

    root.geometry(loc[idx[0]])   # <-- reset the geometry
    idx[0] = (idx[0]+1) % 2      # <-- toggles the index between 0 and 1

root = Tk()
root.title("lol")
root.geometry("300x300-100+100")

photo = PhotoImage(file="pepe.gif")
button = Button(root, image=photo, command=move_me)
button.place(x=10, y=10)

root.mainloop()

[編輯]自動重復移動窗口。

(注意,您有挑戰性的游戲要趕上窗以將其關閉)

from tkinter import *
import random

def move_me():
    x, y = str(random.randrange(800)), str(random.randrange(800))
    loc = "300x300+" + x + '+' + y
    root.geometry(loc)
    root.after(500, move_me)  # <-- auto call to move_me again every 1/2 second

root = Tk()
root.title("lol")
root.geometry("300x300+100+100")

photo = PhotoImage(file="pepe.gif")
label = Label(root, image=photo)
label.place(x=10, y=10)

move_me()      # <-- call to move_me

root.mainloop()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM