簡體   English   中英

如何使用網格布局在小部件之間平均划分空間 Python Tkinter

[英]How to divide space equally between widgets using Grid Layout Python Tkinter

我想使用 Tkinter 中的網格布局在三個按鈕之間平均分配空間。 即使在 window 水平調整大小時,這些按鈕也應該平均占用空間。

################################
#|  btn1  ||  btn2  ||  btn3  |#
################################

這是我的代碼:

import tkinter as tk
from tkinter import ttk

win = tk.Tk()
win.grid_columnconfigure(0, weight=1)

btn1 = ttk.Button(win, text='btn1')
btn1.grid(column=0, row=0, columnspan=1, sticky='EW')

btn2 = ttk.Button(win, text='btn2')
btn2.grid(column=1, row=0, columnspan=1, sticky='EW')

btn3 = ttk.Button(win, text='btn3')
btn3.grid(column=2, row=0, columnspan=1, sticky='EW')

win.mainloop()

這有幫助嗎?

import tkinter as tk
from tkinter import Grid, ttk

win = tk.Tk()

btn1 = ttk.Button(win, text='btn1')
btn1.grid(column=0, row=0, columnspan=1, sticky='EW')

btn2 = ttk.Button(win, text='btn2')
btn2.grid(column=1, row=0, columnspan=1, sticky='EW')

btn3 = ttk.Button(win, text='btn3')
btn3.grid(column=2, row=0, columnspan=1, sticky='EW')
Grid.columnconfigure(win,0, weight=1)
Grid.columnconfigure(win,1, weight=1)
Grid.columnconfigure(win,2, weight=1)


win.mainloop()

如果需要空間,可以將padx=5添加到btn1.grid()btn3.grid()

使用uniform參數為所有三列提供統一的寬度。該值可以是任何值,只要它對於所有要具有相同大小的列都相同。 如果您希望它們隨着 window 的大小調整而增長,請務必給它們一個非零權重。

win.grid_columnconfigure((0,1,2), weight=1, uniform="column")

暫無
暫無

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

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