tkinter布局,主窗体自适应控件大小,上面两个文本框,下面5×5个按钮 by chatgpt

为了实现你的需求,我们可以使用`grid()`方法将按钮和文本框放置在主窗口中,并使用`columnconfigure()`和`rowconfigure()`方法使主窗口自适应控件大小。以下是示例代码:

 

```python

import tkinter as tk

 

# 创建主窗口

root = tk.Tk()

 

# 创建文本框

text1 = tk.Text(root)

text2 = tk.Text(root)

 

# 创建按钮

for i in range(5):

    for j in range(5):

        button = tk.Button(root, text=f"Button {i*5+j+1}")

        button.grid(row=i+2, column=j, padx=5, pady=5)

 

# 将文本框放置到主窗口中

text1.grid(row=0, column=0, columnspan=5, padx=5, pady=5)

text2.grid(row=1, column=0, columnspan=5, padx=5, pady=5)

 

# 设置主窗口自适应控件大小

root.columnconfigure(0, weight=1)

root.rowconfigure(0, weight=1)

root.rowconfigure(1, weight=1)

 

# 运行主窗口

root.mainloop()

```

 

在上面的代码中,我们使用`grid()`方法将按钮和文本框放置在主窗口中。我们将文本框放置在第一行,将按钮放置在第二行和之后的行中,使用`row`和`column`参数指定行和列的位置,并使用`padx`和`pady`参数指定控件之间的间距。我们使用`columnspan`参数指定文本框跨越整个主窗口的列数,以便文本框可以填充整个主窗口的宽度。

 

然后,我们使用`columnconfigure()`和`rowconfigure()`方法设置主窗口自适应控件大小。我们将第一列设置为可扩展的,并将第一行和第二行的权重设置为1,以便它们可以随着文本框和按钮的大小而扩展。这样,当你调整文本框和按钮的大小时,主窗口也会相应地调整大小。

 

你可能感兴趣的:(python,python)