Python Tkinter顶层窗口大小调整

Python Tkinter顶层窗口大小调整,python,tkinter,resize,window,toplevel,Python,Tkinter,Resize,Window,Toplevel,我一直在网上搜寻,试图找到一种在tkinter中调整TopLevel()窗口大小的方法。我读了文档,一直在看。我看到了各种选择,但似乎无法让它们发挥作用 def test(): top = Toplevel() top.title("test") msg = Message(top, text="test") msg.pack(pady=10, padx=10) def test1(): top = Toplevel() top.title("test1")

我一直在网上搜寻,试图找到一种在tkinter中调整
TopLevel()
窗口大小的方法。我读了文档,一直在看。我看到了各种选择,但似乎无法让它们发挥作用

def test():
  top = Toplevel()
  top.title("test")

  msg = Message(top, text="test")
  msg.pack(pady=10, padx=10)


def test1():
  top = Toplevel()
  top.title("test1")

  msg = Message(top, text="test1")
  msg.pack(pady=10, padx=10)
我知道有
height
width
选项,还有
root.geometry
。然而,我似乎无法用
TopLevel
让任何东西工作


另外,通过定义和顶级创建新窗口的最佳方法是什么?我想要的只是一个带有格式化文本的弹出窗口。

下面创建一个根窗口,然后将其大小设置为400x400,然后创建一个
顶级
小部件,并将其大小设置为500x100:

>>> import tkinter as tk
>>> root = tk.Tk()
>>> root.geometry('400x400')
''
>>> top = tk.Toplevel()
>>> top.geometry('500x100')
''
另一种选择是使用容器小部件,如所需大小的
画布
框架
,进入您想要使用的窗口。然后,可以将其他对象放入此容器中:

>>> top2 = tk.Toplevel()
>>> frame = tk.Frame(top2, width=100, height=100)
>>> frame.pack()
当您使用
pack()
框架时,
top2
会自动调整以适应
框架的大小


使用
geometry(),窗口的边框将恰好位于屏幕的可见区域之外。

以下操作将创建一个根窗口,然后将其大小设置为400x400,然后创建一个顶级
小部件,并将其大小设置为500x100:

>>> import tkinter as tk
>>> root = tk.Tk()
>>> root.geometry('400x400')
''
>>> top = tk.Toplevel()
>>> top.geometry('500x100')
''
另一种选择是使用容器小部件,如所需大小的
画布
框架
,进入您想要使用的窗口。然后,可以将其他对象放入此容器中:

>>> top2 = tk.Toplevel()
>>> frame = tk.Frame(top2, width=100, height=100)
>>> frame.pack()
当您使用
pack()
框架时,
top2
会自动调整以适应
框架的大小


使用
geometry(),窗口的边框将位于屏幕的可见区域之外。

如果您只需要一个带有文本的弹出窗口,为什么不让
tkinter
自动设置大小?它会调整窗口的大小以适应它的内容。我觉得它不太合适。我只想调整它的大小如果我想要更大的窗口,顶层是创建新窗口的最佳方式吗?如果你硬编码大小,如果你有不同的字体或不同的分辨率,它将崩溃如果你只想要一个带有一些文本的弹出窗口,为什么不让
tkinter
自动设置大小?它会调整窗口的大小以适应它的内容。我觉得它不太合适。我只想调整它的大小如果我想要更大的窗口,顶层是创建新窗口的最佳方式吗?如果你硬编码大小,如果你有不同的字体或不同的分辨率,它会崩溃