Please see that, I had referred to similar related answers too on this topics
1) What are the cases, that StringVar() / IntVar() would return blank / 0 value resp.?
2) Below is my smaller part of code applied to one of the functionalities in my app. Please do tell me what am I missing in my code to retrieve the expected output.
from tkinter import *
class App(Frame):
def __init__(self,master):
Frame.__init__(self,master)
self.pack()
Label(self,text="Choose timer options:").pack()
self.delayvar = IntVar()
self.delayradio1 = Radiobutton(self,text="Hours",variable=self.delayvar,value=1,command=self.delayfunc)
self.delayradio1.pack()
self.delayradio2 = Radiobutton(self,text="Minutes",variable=self.delayvar,value=2,command=self.delayfunc)
self.delayradio2.pack()
self.delayradio3 = Radiobutton(self,text="Seconds",variable=self.delayvar,value=3,command=self.delayfunc)
self.delayradio3.pack()
def delayfunc(self):
self.delayvarvalue = self.delayvar.get()
self.delayentryvar = StringVar() # or IntVar()
self.delayent = Entry(self,textvariable=self.delayentryvar)
self.delayent.pack()
if self.delayvarvalue == 1:
Button(self,text="save delay",command=self.delayfunc1).pack()
self.delayentry = self.delayent.get() #self.delayentryvar.get()
print(self.delayentry)
def delayfunc1(self):
self.delval = Text(self,height=1, width=10)
self.delval.pack()
self.delval.insert(END,self.delayentry)
if __name__ == '__main__' :
root = Tk()
App(root)
root.title("Delay Timer")
root.geometry("200x200")
root.mainloop()