下面的代码创建一个tkinter OptionMenu,它的背景颜色根据从下拉菜单中选择的内容而变化。我想怎么做就怎么做。你知道吗
但是,如何使此选项菜单可重用?这样我就可以将它从另一个.py文件导入到我的主.py文件中。你知道吗
几天来我一直在尝试不同的方法,读关于如何做到这一点的书,但一直没有弄明白。我读过把函数变成类,把变量变成函数等等,然后把它们导入。然而,我一直无法得到它相当正确,我难住了。你知道吗
import tkinter
HEIGHT = 700
WIDTH = 1100
m = tkinter.Tk()
from lists import lbmenuopt
canvas = tkinter.Canvas(m, height=HEIGHT, width=WIDTH,)
canvas.pack()
#selected item variable
clicked1 = tkinter.StringVar()
# function that changes background color based on selection
def lbmenubg(clicked1):
if clicked1 == "---":
lbmenu.configure(bg="#777777", activebackground="#777777")
elif clicked1 == "LB":
lbmenu.configure(bg="#D35400", activebackground="#D35400")
elif clicked1 == "Sign":
lbmenu.configure(bg="#D35400", activebackground="#D35400")
else:
lbmenu.configure(bg="#196F3D", activebackground="#196F3D")
# Option Menu settings and placement
lbmenu = tkinter.OptionMenu(m, clicked1, *lbmenuopt, command= lambda x: lbmenubg(clicked1.get()))
lbmenu.config(bg="#777777", foreground="white", activeforeground="white", activebackground="#777777",
borderwidth=0, relief="flat", bd=0)
lbmenu['menu'].config(bg="#e4e4e4", fg="black", activebackground="white", activeforeground="#3b4045",)
lbmenu.place(relx=0.125, rely=.03, relwidth=0.065, relheight=0.03)
m.mainloop()
目前没有回答
相关问题 更多 >
编程相关推荐