Jul-31-2021, 07:36 AM
i am working on a Order form with tkinter. The first draft worked well, I wanted to add current date display on the form. When i run it I get a Syntax Error " invalid syntax" highlighting the "toothnumbervalue" I am a beginner in python . i have gone through the code several times but am unable to locate the cause of the error . Can somebody please show me the way.
from tkinter import * root = Tk() def getvals(): print("Submitting form") print(f"{labnamevalue.get(),patientnamevalue.get(), workvalue.get(), toothnumbervalue.get(), materialvalue.get(), shadevalue.get(), labservicevalue.get(),orderdatevalue.(dt.datetime.now():%a, %b %d %Y)} ") with open("records.txt", "a") as f: f.write(f"{labnamevalue.get(),patientnamevalue.get(), workvalue.get(), toothnumbervalue.get(), materialvalue.get(), shadevalue.get(), labservicevalue.get(),orderdatevalue.(dt.datetime.now():%a, %b %d %Y)}\n ") root.geometry("644x344") #Heading Label(root, text="Arora Dental Care\n Lab Work Order ", font="comicsansms 13 bold", pady=15).grid(row=0, column=5) #Text for our form labname = Label(root, text=" Lab. Name") patientname=Label(root, text=" Patient.Name") orderdate=Label(root,text="Order Date") work = Label(root, text="Work Required") toothnumber = Label(root, text="Tooth Number") material = Label(root, text="Material") shade = Label(root, text="Shade") #Pack text for our form labname.grid(row=1, column=2) patientname.grid(row=1, column=5) orderdate.grid(row=2, column=5) work.grid(row=2, column=2) toothnumber.grid(row=3, column=2) material.grid(row=4, column=2) shade.grid(row=5, column=2) # Tkinter variable for storing entries labnamevalue = StringVar() patientnamevalue = StringVar() orderdatevalue= StringVar() workvalue = StringVar() toothnumbervalue = StringVar() materialvalue = StringVar() shadevalue = StringVar() labservicevalue = IntVar() #Entries for our form labnameentry = Entry(root, textvariable=labnamevalue) patientnameentry = Entry(root, textvariable=patientnamevalue) orderdateentry=Label(root,text=f"{dt.datetime.now():%a,%b %d %Y}") workentry = Entry(root, textvariable=workvalue) toothnumberentry = Entry(root, textvariable=toothnumbervalue) materialentry = Entry(root, textvariable=materialvalue) shadeentry = Entry(root, textvariable=shadevalue) # Packing the Entries labnameentry.grid(row=1, column=3) patientnameentry.grid(row=1, column=7) orderdateentry.grid(row=2, column=5) workentry.grid(row=2, column=3) toothnumberentry.grid(row=3, column=3) materialentry.grid(row=4, column=3) shadeentry.grid(row=5, column=3) #Checkbox & Packing it labservice = Checkbutton(text="Want metal coping trial", variable = labservicevalue) labservice.grid(row=7, column=3) #Button & packing it and assigning it a command Button(text=" submit ", command=getvals).grid(row=13, column=3) root.mainloop()