如何随机向Tkinter GUI添加按钮?

0 投票
2 回答
1385 浏览
提问于 2025-04-15 22:50

我想知道怎么在Tkinter的图形界面里随机添加按钮。我需要能够创建一个按钮,然后把它放在窗口的任何地方,这可能吗?我在Windows上使用的是Python 2.6。

2 个回答

0

有几种选择可以考虑。例如,你可以设计一个网格,每行有六个按钮。这样的话,你只需要从第0行开始,每个按钮的列数加1。当到达最后一列时,就把列数重置为0,然后把行数加1。

另一种选择是使用一个文本控件作为容器,把按钮放在这个文本控件里,并启用换行功能。这样一来,按钮会自动填满一行,如果用户调整主窗口的大小,按钮也会自动换行。虽然这稍微麻烦一点,但如果你想要这样的效果,它的确很好用。

2

如果你想让按钮随机放置(或者说不想让它们整齐排列成网格),你可以使用place几何管理器。不过,根据不同的平台,重叠的按钮可能不会像你想的那样工作,所以最好还是避免让它们重叠。

下面是一个简单的例子:

from Tkinter import *
from random import random

root = Tk()
frame = Frame(root, height=200, width=200)

for i in range(10):
    Button(frame, text=str(i)).place(x=random() * 150, y=random() * 180)

frame.pack()
root.mainloop()

撰写回答