I'm trying to get a "Save" button color to change color if any form data has been changed. I got this to work once before but misplaced my flash drive with it on there. Current attempts are failing. Any pointers? There's an unseen module which talks to the database which I don't think will make a difference here. The code I'm referring to is down towards the bottom. Thanks in advance:
from tkinter import * from tkinter import ttk import tkinter as tk import dbConnect as db db.ssConnect() rowspacer=40 colspacer=40 class demoForm(): def fillDemoForm(): root = Tk() fName = tk.StringVar().trace_add('write',demoForm.changeButton) lName = tk.StringVar().trace_add('write',demoForm.changeButton) fName = db.getFlds.getFld(index=0,fldName='Fname',tblName='Name2') lName = db.getFlds.getFld(index=0,fldName='Lname',tblName='Name2') btnSave = ttk.Button(text="Save") btnSave.place(x=colspacer*6, y=rowspacer*1) lblFname= tk.Label(text='fName').place(x=10, y=10) fldFname = Entry(root,textvariable=fName ) fldFname.place(x=60, y= 10) fldFname.delete(0,END) fldFname.insert(0,fName) lblLname= tk.Label(text='lName').place(x=10, y=rowspacer) fldLname= tk.Entry(root, textvariable=lName) fldLname.place(x=60, y= rowspacer) fldLname.delete(0,END) fldLname.insert(0,lName) root.geometry('325x250') root.configure(background = "lightgray") root.mainloop() def changeButton(): btnSave=Button(root, text="Save",bg="red") demoForm.fillDemoForm()