【发布时间】:2021-07-16 09:14:00
【问题描述】:
我需要将两个或多个 tkinter 窗口拼接在一起,这样如果一个窗口移动,其他窗口就会一起移动。这将给人一种印象,即只有一个窗口打开并处于焦点位置,而不是显示多个窗口。我试图阅读并找到解决方案,但没有解决方案直接解决此问题。我承认使用配置,我们可以检测到 tkinter 窗口的移动,然后绑定一个函数,可以用来拼接打开的窗口。但我不能这样做。以下是我目前的代码:
import tkinter as tk
from tkinter import *
root = tk.Tk()
root.geometry("350x300+200+100")
def opennewwindow():
newWindow = Toplevel(root)
newWindow.geometry("350x300+200+100")
def move(event=None):
w = root.winfo_width()
h = root.winfo_height()
x = root.winfo_x()
y = root.winfo_y()
root.geometry("%ix%i+%i+%i" % (w, h, x, y))
button = tk.Button(root, text = "button", command=opennewwindow)
button.place(width=160, height=70, x=24, y=100)
root.bind("<Configure>", move)
root.mainloop()
谢谢
【问题讨论】:
-
你为什么不打电话给
root.withdraw()?如果您想再次显示它,您可以致电root.deiconify()
标签: python python-3.x tkinter