title: showing another window/frame in wxPython
body: <p>I am fairly new to programming and to python and wxpython. I have looked over this code for literally HOURS and I tried finding an answer everywhere online. I am having trouble getting a new window to show up after a menu item is clicked. Here is my code so far...</p>
  
  <pre><code>import wx
  
  class MainWindow(wx.Frame):
  
      def __init__(self,parent,id):
          wx.Frame.__init__(self,parent,id,'Python Test App',size=(600,400))
          panel=wx.Panel(self)
          wx.Frame.CenterOnScreen(self)
          ##wx.Frame.Maximize(self)
  
          status=self.CreateStatusBar()
          menubar=wx.MenuBar()
          file_menu=wx.Menu()
          edit_menu=wx.Menu()
  
          ID_FILE_NEW = 1
          ID_FILE_OPEN = 2
  
          ID_EDIT_UNDO = 3
          ID_EDIT_REDO = 4
  
  
          file_menu.Append(ID_FILE_NEW,"New Window","This is a new window")
          file_menu.Append(ID_FILE_OPEN,"Open...","This will open a new window")
  
          edit_menu.Append(ID_EDIT_UNDO,"Undo","This will undo your last action")
          edit_menu.Append(ID_EDIT_REDO,"Redo","This will redo your last undo")
  
  
          menubar.Append(file_menu,"File")
          menubar.Append(edit_menu,"Edit")
          self.SetMenuBar(menubar)
  
          self.Bind(wx.EVT_MENU, NewWindow.new_frame, None, 1)
  
  class NewWindow(wx.Frame):
  
      def __init__(self,MainWindow,id):
          wx.Frame.__init__(self, None, id, 'New Window', size=(600,400))
          wx.Frame.CenterOnScreen(self)
          self.Show(False)
  
      def new_frame(self, event):
          NewWindow.Show(True)
  
  
  
  if __name__=='__main__':
          app=wx.PySimpleApp()
          frame=MainWindow(parent=None,id=-1)
          frame.Show()
          app.MainLoop()
  </code></pre>
  
  <p>When I try to run this code, I get this error message once I click on the menu item "New Window"</p>
  
  <pre><code>TypeError: unbound method new_frame() must be called with NewWindow instance as first argument (got CommandEvent instance instead)
  </code></pre>
  
  <p>Again, I am fairly new to programming. Any help is greatly appreciated and also, I know my code may not be the "cleanest" looking code around. Thanks in advance!</p>