我试着做一个程序,在那里我可以用一个变量改变按钮的宽度,但它不会更新。我知道如何对文本做同样的处理,但我不能处理它的尺寸。另外,我不能将尺寸保留为默认值,因为我有多个按钮,所有按钮都需要具有相同的尺寸,但文本不同
我尝试的第一件事是更改widthvariable的width命令,因为这适用于text-to-textvariable,但它根本不存在。 我还尝试设置width=var,但没有
from tkinter import *
root=Tk()
myFrame=Frame()
myFrame.pack(fill="both", expand="True")
idioma=StringVar(myFrame)
idioma.set("Català")
idiomes_possibles=["Català", "Español", "English", "Deutsch"]
idiomes_possibles=OptionMenu(myFrame, idioma, *idiomes_possibles)
idiomes_possibles.config(width=10)
idiomes_possibles.grid(row=1, column=0)
vari=IntVar()
vari.set(15)
varia=vari.get()
def change_dropdown(*args):
idioma_elegit=idioma.get()
if(idioma_elegit=="Català"):
vari.set(15)
varia=vari.get()
elif(idioma_elegit=="Español"):
vari.set(17)
varia=vari.get()
botó_recta=Button(myFrame, width=varia)
botó_recta.grid(row=0, column=1)
root.mainloop()
我希望更改idioma变量会更改varia变量,按钮也会调整大小,除了调整按钮的大小之外,其他都会这样做。 谢谢
如前所述,您需要实际更改函数
change_dropdown
中按钮的宽度。但是您还没有将函数作为回调函数分配给OptionMenu
,因此在更改选择之后实际上什么也不会发生。这样的方法应该有用:相关问题 更多 >
编程相关推荐