如何在 Python 中更改按钮大小?

33

我正在学校做一个简单的项目,需要制作六个不同大小的按钮供点击。但是我不知道如何实现。我已经用以下代码创建了这个按钮:

def __init__(self, master):
    super().__init__(master)
    self.grid()
    self.button1 = Button(self, text = "Send", command = self.response1)   
    self.button1.grid(row = 2, column = 0, sticky = W)

我设想的是:

self.button1.size(height=100, width=100)

我的代码应该可以工作,但事实上它并没有工作,我无法在任何地方找到如何解决它的方法。

我正在使用Python 3.3。


5
你需要展示更多的代码,并修复缩进。你使用的是哪个工具包?wx?Tkinter?GTK? - mgilson
7
您所说的“截至目前最新版本的Python”是指3.3版本吗?通常最好这样说,特别是因为某些老古董仍将2.7视为“最新版本的Python”,因为它是最新的2.x版本...但更重要的是,如果有人在2015年阅读此问题,他不希望去查找Python发布历史记录以确定答案是否已经过时。 - abarnert
2个回答

61

在Tkinter中配置按钮(或任何小部件)是通过调用configure方法"config"来完成的。

要更改名为button1的按钮的大小,您只需调用:

button1.config( height = WHATEVER, width = WHATEVER2 )

如果您在初始化时知道所需的大小,可以将这些选项添加到构造函数中。

button1 = Button(self, text = "Send", command = self.response1, height = 100, width = 100) 

3
那是以像素为单位的尺寸吗? - DarthVlader
1
@digitalHamster0 是的,它是以像素为单位的。 - Person
5
@Person,我认为情况已经不是这样了。我在Python3中使用的是tkinter 8.6版本,按钮大小不是以像素为单位的。这个答案提供了一种解决方法。 - SpaceMonkey55

2

我一直都在使用 .place() 来创建我的 tkinter 小部件。 place 语法

您只需更改关键字参数即可指定其大小!

当然,如果您想要更改它,您将需要再次调用 .place()

在 Python 3.8.2 中可用,如果您有疑问。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接