如何在python中水平放置单选按钮

埃里克·弗兰克
AANTAL = [(1,"1"),(2,"2"),(3,"3"),(4,"4"),(5,"5"),(6,"6"),]
v= StringVar()
v.set("1")

for text, mode in AANTAL:
but = Radiobutton(Main,padx=20, pady=10,font=('arial', 20, "bold"), bd=4, 
text=text, variable=v, value=mode, indicatoron=0)
but.grid()    

上面的代码显示了一些编号为 1 到 6 的单选按钮。但是,它垂直而不是水平地显示它们。有谁知道我该如何解决这个问题?

我已经尝试过放入row=0grid 命令,但这只会将按钮堆叠在一起,而不是将它们散布成一行。

拉菲克斯洛斯

grid有两个放置小部件的选项。row column您需要指定两者。

buttons = []
vars = []
for idx, (text, mode) in enumerate(AANTAL):
    vars.append(StringVar(value="1"))
    buttons.append(Radiobutton(Main,padx=20, pady=10,font=('arial', 20, "bold"), bd=4, text=text, variable=vars[-1], value=mode, indicatoron=0))
    buttons[-1].grid(row=0, column=idx) 

此外,当使用循环创建小部件时,最好将它们存储在列表中,因为您可以稍后在程序中访问它们。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章