I'm trying to make my gtk.Entry accept only numbers. At first I tried to print something in my stdout as the event occurs, but as I ran my script nothing occurred when I entered something in my gtk.Entry (pygtk 2.24, python 2.7.2, Windows XP, also I ran the same code in Linux, results in the same). What can be wrong with the code?
import gtk
class UI:
def delete_event(self, widget, event, data=None):
return False
def destroy(self, widget, data=None):
gtk.main_quit()
def preedit_changed(self, widget, preedit, data=None):
print "preedit_changed"
return True
def __init__(self):
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.connect("delete_event", self.delete_event)
self.window.connect("destroy", self.destroy)
self.window.set_border_width(5)
self.entry = gtk.Entry()
self.entry.connect("preedit-changed", self.preedit_changed)
self.window.add(self.entry)
self.window.show_all()
gtk.main()
if __name__ == "__main__":
ui = UI()