Hi,
I am trying to make a dialog and try to get all keypress and do some aktions
on keypress.
that's what i've done sofar.
class PINDialog(wx.Dialog):
def __init__(self, parent, length=5, verify=False):
wx.Dialog.__init__(self, parent, -1, 'Bitte PIN eingeben', size=(280,
360))
self.verify = verify
self.lenth = length
panel = wx.Panel(self, -1)
vbox = wx.BoxSizer(wx.VERTICAL)
textbox = wx.BoxSizer()
self.text = wx.StaticText(panel, -1, "Bitte geben Sie Ihren %d
stelligen PIN Code ein" % (length,))
textbox.Add(wx.Panel(panel, -1), 1, wx.EXPAND, 0)
textbox.Add(self.text, 0, wx.EXPAND | wx.ALL, 5)
textbox.Add(wx.Panel(panel, -1), 1, wx.EXPAND, 0)
hbox = wx.BoxSizer()
hbox.Add(wx.Panel(panel, -1), 1, wx.ALL | wx.EXPAND, 0)
self.images = {}
for state in ['notset', 'set', 'verified'] :
self.images[state] = wx.Bitmap(os.path.join('resources', 'icons',
'pinkey_'+state+'.png'), wx.BITMAP_TYPE_PNG)
self.imgwidgets = []
for x in range(length) : #@UnusedVariable
widget = wx.StaticBitmap(panel, -1, self.images['notset'])
self.imgwidgets.append(widget)
hbox.Add(widget, 0, wx.ALL | wx.EXPAND, 5)
hbox.Add(wx.Panel(panel, -1), 1, wx.ALL | wx.EXPAND, 0)
btnbox = wx.StdDialogButtonSizer()
btnbox.AddButton(wx.Button(panel, wx.ID_OK))
btnbox.AddButton(wx.Button(panel, wx.ID_CANCEL))
btnbox.Realize()
vbox.Add(textbox, 0, wx.ALL | wx.EXPAND, 5)
vbox.Add(hbox, 0, wx.ALL | wx.EXPAND, 5)
vbox.Add(btnbox, 0, wx.ALL | wx.EXPAND, 5)
panel.SetSizer(vbox)
panel.SetFocus()
wx.EVT_KEY_DOWN(self, self.keypress)
vbox.Fit(self)
def keypress(self, event):
print "keypress", `event`
pprint.pprint(dir(event))
The problem is that the keypress methode never gets called. What am I missing
here.
Regards
Gerhard
···
--
----------------------------------------------------------------------------
Gerhard Schmidt | http://www.augusta.de/~estartu |
Fischbachweg 3 | | PGP Public Key
86856 Hiltenfingen | JabberID: estartu@augusta.de | on request
Germany | |