Hello I am trying to make theme window with tkinter. There is 5 variable for different widgets's color. I will use color dialog for choosing colors but I don't want to define 5 functions. So I think I can make 1 function with 1 parameter of which variable to change color of it. My code is below;
My variables:
generalBgColor = '#454b4d'
generalFgColor = '#f2fdff'
generalBtnColor = '#0a5e7a'
mainLabelColor = '#ffffff'
highlightedLetterColor = '#ff0000'
Buttons that call pickColor
function:
bgButton = tk.Button(themeWindow, text=' ', relief='ridge',bg=generalBgColor, width=6, command=lambda: pickColor(generalBgColor))fgButton = tk.Button(themeWindow, text=' ', relief='ridge',bg=generalFgColor, width=6, command=lambda: pickColor(generalFgColor))btnButton = tk.Button(themeWindow, text=' ', relief='ridge',bg=generalBtnColor, width=6, command=lambda: pickColor(generalBtnColor))mainlButton = tk.Button(themeWindow, text=' ', relief='ridge',bg=mainLabelColor, width=6, command=lambda: pickColor(mainLabelColor))letterButton = tk.Button(themeWindow, text=' ', relief='ridge',bg=highlightedLetterColor, width=6,command=lambda:pickColor(highlightedLetterColor))
And this is the my function:
def pickColor(variable):global generalBgColor, generalFgColor, generalBtnColor, mainLabelColor, highlightedLetterColortempColor = askcolor(color=variable, title='Choose A Color')variable = tempColor[1]
There is no error but variable doesn't change. I know this won't work this is the reason why I ask here for help.