code: def printout(self, print_area, print_data):
          
  
          print_info = \
              self.main_window.interfaces.get_cairo_export_info("Print")
  
          if print_info is None:
              # Dialog has been canceled
              return
  
          pdd = wx.PrintDialogData(print_data)
          printer = wx.Printer(pdd)
  
          printout = Printout(self.grid, print_data, print_info)
  
          if printer.Print(self.main_window, printout, True):
              self.print_data = \
                  wx.PrintData(printer.GetPrintDialogData().GetPrintData())
  
          printout.Destroy()
docs: Print out print area
  
          See:
          http://aspn.activestate.com/ASPN/Mail/Message/wxpython-users/3471083