Eventos del teclado con Tkinter

Chema Cortés chemacortes en wanadoo.es
Sab Ene 26 19:43:31 CET 2002


El Sáb 26 Ene 2002 01:02, Camilo escribió:

> Alguien sabe por que este programa no funciona?
>
> ---------------------------------------------------------------------------
>
> from Tkinter import *
>
> class App:
>         def __init__ (self, master) :
>                 frame = Frame(root, width=100, height=100)
>                 frame.pack()
>                 frame.bind("<a>", self.keyboard)
>         def keyboard (self, event):
>                 print "HELLO"
>
> root = Tk()
> app = App(root)
> root.mainloop()
>
> ---------------------------------------------------------------------------

Activa el foco sobre frame:

frame.focus()



Una advertencia y un consejo: en la clase estás usando 'root' directamente, 
en lugar de utilizar 'master'. Así mismo, podrías hacer que tu código quedara 
más conciso dándole más orientación a objetos haciendo que App fuera una 
clase derivada de Tk:


from Tkinter import *

class App(Tk):
    def __init__(self):
	Tk.__init__(self)
        frame=Frame(self, width=100, height=100)
        frame.pack()
        frame.bind("<a>", self.keyboard)
    def keyboard(self, event):
        print "HELLO"

app=App()
app.mainloop()



Saludos,
-- 
Chema Cortes (chemacortes en wanadoo.es) | LinuxUser#142755 - SuSE Linux 7.3
  ZARALINUX  http://www.zaralinux.org | "La ignorancia se apodera de quien
    PYTANDO  http://pytando.sf.net    |     se contenta con lo que sabe"





Más información sobre la lista de distribución Python-es