Feb-13-2022, 04:08 AM
Here is one way to go about it.
import tkinter as tk rowspacer=40 colspacer=40 class demoForm(): def __init__ (self) : self.root = tk.Tk () self.fName = tk.StringVar () self.fName.trace_add ('write', self.changeButton) def fillDemoForm(self): self.btnSave = tk.Button(text="Save") self.btnSave.place(x=colspacer*6, y=rowspacer*1) blFname= tk.Label(text='fName').place(x=10, y=10) fldFname = tk.Entry(self.root,textvariable=self.fName ) fldFname.place(x=60, y= 10) fldFname.delete(0,tk.END) fldFname.insert(0,self.fName) self.root.geometry('325x250') self.root.configure(background = "lightgray") self.btnSave.config (bg = 'lightgray') self.root.mainloop() def changeButton(self, *args): self.btnSave.config (bg="red") test = demoForm () test.fillDemoForm()