import wx, os

class TestKey(wx.Frame):
    def __init__(self, parent, id, title, position, size):
        wx.Frame.__init__(self, parent, id, title, position,  size)
        ID = wx.NewId()
        self.SetAcceleratorTable(
            wx.AcceleratorTable([(wx.ACCEL_NORMAL, ord('P'), ID)]) )
        d = wx.Button(self, -1, "Press Me")
        wx.EVT_BUTTON(self, d.GetId(), self.OnButton)
        wx.EVT_KEY_DOWN(self,self.OnKeyDown)
        wx.EVT_MENU(self, ID, self.OnAccelKey)
        
        
    def OnKeyDown(self, event):
        key = event.KeyCode()
        if key == wx.WXK_UP:
            print "Up Key Pressed"
        event.Skip()


    def OnAccelKey(self, evt):
        print "Got accelerator"

    def OnButton(self, evt):
        print "Button pressed"
        

class App(wx.App):
    def OnInit(self):
        frame = TestKey(None, -1, "Key Press  Test",
                        wx.DefaultPosition, (200,200))
        self.SetTopWindow(frame)
        frame.Show(True)
        return True

if __name__ == "__main__":
        app = App(0)
        app.MainLoop()

