Tkinter 按钮调整大小

Tkinter button resize

this 我找到了如何调整按钮的大小,所以我尝试执行这段代码。

from tkinter import * 
selection_window = Tk()
selection_window.wm_title("")
selection_window.geometry('{}x{}'.format(200, 150))
frame_1 = Frame(selection_window, width=200, height=30)
Button(frame_1, text="Single",height = 100).pack(side=LEFT,anchor=S)
Button(frame_1,text="Range",command=Toplevel,height = 20).pack(side=RIGHT,anchor=S)
frame_1.pack()
selection_window.mainloop()

但是按钮的大小并没有改变,而是按钮到了 window 的中心。有人可以告诉我为什么会出现问题吗?

按钮高度: 如果你注意到,frame_1的高度是30,按钮的高度是100和20。一个按钮的高度明显高于frame_1。所以如果你最大化你的 tk window,你会看到按钮的高度差异。或者,尝试将一个按钮的高度设置为 10,将另一个设置为 2,然后重新 运行 您的脚本,以查看高度差异。结论,按钮高度可以改变。

按钮横向放置: 按钮的横向放置可以通过使用 pack 系统的 padx=[x_left, x_right] 选项来控制。 x_leftx_right 表示相对于父级按钮在按钮的每一侧保留的水平外部填充.您可以阅读 Tk documentation 以更清楚地了解 Packer 算法。

from tkinter import * 
selection_window = Tk()
selection_window.wm_title("")
selection_window.geometry('{}x{}'.format(200, 150))
frame_1 = Frame(selection_window, width=200, height=30)
frame_1.pack()
Button(frame_1, text="Single",height = 10).pack(side=LEFT, anchor=S, padx=[0,40])
Button(frame_1,text="Range",command=Toplevel,height = 2).pack(side=RIGHT, anchor=S, padx=[20,0])
selection_window.mainloop()

身高: Placement:

第 2 部分: 根据下面的评论,请在脚本下面 运行 看看使用 'non-default' 样式主题和 post 您在评论区。它适用于我的 Ubuntu.

from tkinter import *
import tkinter.ttk as ttk
s=ttk.Style()
print('Style themes on my system are ', s.theme_names())
s.theme_use('clam')
s.configure('bb.TButton', background='white', padding=50)
b1=ttk.Button(text='Default')
b1.pack(side=LEFT, anchor=S, padx=[0,40])
b2=ttk.Button(text='Custom', style='bb.TButton')
b2.pack(side=RIGHT, anchor=S, padx=[20,0])

填充=1 填充=40