Foros del Web » Programando para Internet » Python »

eventos del teclado pygtk

Estas en el tema de eventos del teclado pygtk en el foro de Python en Foros del Web. Buenas estoy intentando ver como se pueden capturar eventos del teclado en pygtk. Por ejemplo tengo una aplicación que tiene un boton aceptar y quiero ...
  #1 (permalink)  
Antiguo 25/02/2012, 23:04
 
Fecha de Ingreso: agosto-2010
Ubicación: Montevideo
Mensajes: 59
Antigüedad: 14 años, 3 meses
Puntos: 0
eventos del teclado pygtk

Buenas estoy intentando ver como se pueden capturar eventos del teclado en pygtk. Por ejemplo tengo una aplicación que tiene un boton aceptar y quiero que cuando se precione ENTER se aprete el boton, o sea tenga la misa accion, como puedo capturar estos eventos de teclado?

Saludos y Gracias
  #2 (permalink)  
Antiguo 26/02/2012, 00:13
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: eventos del teclado pygtk

Depende si esta seleccionado el botón y le das enter genera el mismo evento que si le dieras click.

Ahora si estas en un textbox o en algún otro widget tienes que vincular el evento key-press-event, saber si la tecla presionada es enter y si es así mandar llamar a la rutina del evento click.
  #3 (permalink)  
Antiguo 26/02/2012, 00:39
 
Fecha de Ingreso: agosto-2010
Ubicación: Montevideo
Mensajes: 59
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: eventos del teclado pygtk

Ok, podrias indicarme como conseguir que tecla estoy presionando, por ejemplo quiero obtener la tecla Supr, como obtengo, o como comparo el evento con esta tecla? no se si me explique bien, pero en si ya tengo el evento del key_press y ahora quiero saber como hago para saber si ese evento es la tecla Supr por ejemplo.
  #4 (permalink)  
Antiguo 26/02/2012, 20:35
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: eventos del teclado pygtk

Aquí un ejemplo sencillo de como manejar el evento key-press-event
Código Python:
Ver original
  1. import gtk
  2.  
  3. class Window(gtk.Window):
  4.  
  5.     def __init__(self):
  6.         super(Window, self).__init__()
  7.  
  8.         self.set_title('Key events')
  9.         self.set_position(gtk.WIN_POS_CENTER)
  10.  
  11.         self.connect("key-press-event", self.on_key_down)
  12.         self.connect("destroy", gtk.main_quit)
  13.  
  14.     def on_key_down(self, widget, event):
  15.         if event.keyval == gtk.keysyms.Return:
  16.             print "Enter"
  17.  
  18. w = Window()
  19. w.show_all()
  20. gtk.main()

Etiquetas: eventos, pygtk, teclado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:11.