Я не совсем уверен, что понимаю ваш вопрос, но, возможно, это поможет следующее.Я добавил в changeColour()
параметр, который сообщает, какой виджет нужно изменить, и изменил переданный ему аргумент ключевого слова command
, чтобы он передавался при вызове.Также добавлена аналогичная command
для другой кнопки, которая изменит цвет обратно на значение по умолчанию.
bgColour = "lightblue" # Default background colour.
def changeColour(widget, colour):
widget.configure(bg=colour)
def settings():
global window1
window1=Tk()
window1.minsize(width=400, height=600)
window1.maxsize(width=400, height=600)
window1.title("Boja pozadine")
bg_colour1 = Frame(window1, bg=bgColour, width=400, height=600)
bg_colour1.pack()
naslov_bojaPozadine = Label(window1,
text="Background color",
bg=bgColour,
font=("Arial", 15, "bold"))
naslov_bojaPozadine.place(x=20,y=10)
light_blue = Button(window1, text="Light blue", bg=bgColour, bd=3,
command=lambda: changeColour(bg_colour1, bgColour))
light_blue.place(x=20,y=50, width=100)
light_green = Button(window1,text="light green",
command=lambda: changeColour(bg_colour1, "light green"))
light_green.place(x=20,y=80, width=100)
settings()
window1.mainloop()