On 2014-01-15 20:16, eneskri...@gmail.com wrote:
While working with tkinter in python 3.3, I had the following problem.
def get_text(event):
             self.number_of_competitors = entered_text.get()
             try:
                 self.number_of_competitors = int(self.number_of_competitors)

A bare except like this is virtually never a good idea:

             except:
                 pass
             if type(self.number_of_competitors) == int:
                 root.destroy()
             else:
                 label.config(text = "Enter the number of competitors. Please enter 
a number.")

Something like this would be better:

    try:
        self.number_of_competitors = int(entered_text.get())
    except ValueError:
label.config(text="Enter the number of competitors. Please enter a number.")
    else:
        root.destroy()

root = Tk()
label = Label(root, text = "Enter the number of competitors.")
label.pack(side = TOP)
entered_text = Entry(root)
entered_text.pack()

This will make it call 'get_text' when the button is clicked:

Button(root, text = "Submit", command = get_text).pack()

This will make it call 'get_text' when the pointer enters the frame:

root.bind('<Enter>', get_text)

Did you mean '<Return>', i.e. the Return key?

root.mainloop()

This is a buggy part of the code. When I run it, instead of doing what it 
should do, it responds to all events BUT enter. I'm not sure if this error is 
on tkinters or my side. Please help!


--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to