diff options
author | Martin Abente Lahaye <tch@sugarlabs.org> | 2013-01-15 20:43:41 (GMT) |
---|---|---|
committer | Martin Abente Lahaye <tch@sugarlabs.org> | 2013-01-15 20:43:41 (GMT) |
commit | 7e9cd87f080d5e4e16995b660f90a3fe7797aa5e (patch) | |
tree | 62c482f30e64aa6614ca442aeaa5a2663ed8efa5 | |
parent | 181977bea7db5fb464f6a488a50b096850dc97ab (diff) |
gtk capture key press events
-rwxr-xr-x | 009-gtk-capture-keys/example.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/009-gtk-capture-keys/example.py b/009-gtk-capture-keys/example.py new file mode 100755 index 0000000..c451161 --- /dev/null +++ b/009-gtk-capture-keys/example.py @@ -0,0 +1,32 @@ +#!/usr/bin/python +import gtk + + +class MyApp(): + + def __init__(self): + window = gtk.Window() + window.set_title('Grabbing keys example.') + + label = gtk.Label() + label.set_text('Press any key.') + + window.connect('destroy', self.destroy) + window.connect('key-press-event', self.__key_press_cb, label) + + window.add(label) + + window.show() + label.show() + + def destroy(self, window, event=None): + gtk.main_quit() + + def __key_press_cb(self, window, event, label): + key_name = gtk.gdk.keyval_name(event.keyval) + label.set_text(key_name) + + +if __name__ == "__main__": + my_app = MyApp() + gtk.main() |