如何制作python.3 gui窗口固定大小?

时间:2013-05-30 03:19:56

标签: python user-interface tkinter python-3.3

至于提到的问题,我找不到任何可以修复gui窗口和所有标签,按钮等位置的代码。

import tkinter
import tkinter.messagebox

class Menu:
    def __init__(self):

        self.main = tkinter.Tk(height = 200, width = 400)

        self.position = tkinter.Label(self.main, text = '123',\
                                      bg = 'Purple',\
                                      height = 2, width = 8)
        self.position.place(height=50, width= 100)

        self.position.pack()

        tkinter.mainloop()

gui = Menu()

为此,我只能进行标签的大小调整,而不是主窗口的位置和大小。 它给出了这个错误

Traceback (most recent call last):
  File "C:\Python33\Saves\Label position.py", line 18, in <module>
    gui = Menu()
  File "C:\Python33\Saves\Label position.py", line 7, in __init__
    self.main = tkinter.Tk(height = 200, width = 400)
TypeError: __init__() got an unexpected keyword argument 'height'

4 个答案:

答案 0 :(得分:3)

看起来你无法在构造函数中设置Tk元素的宽度和高度。但是,您可以使用geometry方法:

self.main = tkinter.Tk()
self.main.geometry("400x200")

答案 1 :(得分:1)

使用minsizemaxsize方法设置窗口大小。以下代码将生成固定大小的窗口。当然,您可以跳过其中一个,让您的用户可以选择在任何一个方向调整窗口大小。

top = tkinter.Tk()
top.minsize(width=300, height=300)
top.maxsize(width=300, height=300)

答案 2 :(得分:1)

执行此操作的正确方法是在窗口声明后写下此行:

{yourwindow}.resizable(width = False, height = False)

资料来源: https://www.youtube.com/watch?v=SVW0ofsBKCU

答案 3 :(得分:0)

您可以使用可调整大小的功能。

root = Tk()
root.title('TITLE')
root.resizable(0, 0)