Jul-24-2017, 10:14 AM
(This post was last modified: Jul-24-2017, 10:14 AM by papatubies.)
how to fix cursor pos?
def atPos(atX=0,atY=0): frame = Frame(root) frame.place(x=atX,y=atY) return frame class MyEntry: def __init__(self,parent): self.frame = Frame(parent, width=150,height=24) self.frame.pack_propagate(False) self.frame.pack() self.var = StringVar() self.var.trace("w", self.thousandseparator) self.vcmd = (self.frame.register(self.onValidate),'%d', '%P', '%S') self.entry = Entry(self.frame,textvariable=self.var, validate="all", validatecommand=self.vcmd) self.entry.pack(fill=BOTH,expand=True) def onValidate(self, d, P, S): if d=='1': if S in '0123456789': return True else: return False else: return True def thousandseparator(self,*arg): self.pra = self.var.get() self.buff = self.pra.replace(',','') if len(self.buff) > 0: self.value = int(self.buff) self.change = "{:,}".format(self.value) self.var.set(self.change) if __name__ == '__main__': import locale from tkinter import * root = Tk() root.geometry('325x120+50+50') pos10 = atPos(15,10) label1 = Label(pos10,text='Type Number Only').pack() pos11 = atPos(150, 10) entry = MyEntry(pos11) pos20 = atPos(15,37) label2 = Label(pos20,text='Type Number again').pack() pos21 = atPos(150, 37) entry = MyEntry(pos21) pos3 = atPos(150,80) Exit = Button(pos3,text=' Exit ',command=lambda : quit()).pack() root.mainloop()