Предлагаю example создания двухоконного приложения с возможностью управления параметрами одного окна из другого.
А так же пример включения полноэкранного режима

Первое окно:
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import wx
from display import RainbowDisplay
class MyFrame(wx.Frame):
def __init__(self, parent, id, title):
wx.Frame.__init__(self, parent, id, title)
self.frame2=RainbowDisplay(self, -1, 'Радуга')
self.frame2.Show()
setpanel = wx.Panel(self,-1)
RainbowDisplay.slider = wx.Slider(setpanel,-1, 0, 0, 400, (0,20), (300,-1))
RainbowDisplay.slider.Bind(wx.EVT_SCROLL, self.DisplayWidth)
self.SetPosition((500,0))
RainbowDisplay.displaywidth=0
self.Show()
def DisplayWidth(self, evt):
RainbowDisplay.displaywidth = evt.GetInt()
self.frame2.Refresh()
app = wx.App()
MyFrame(None, -1, 'Радуга')
app.MainLoop()
Второе окно:
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import wx
import wx.lib.wxcairo
class RainbowDisplay(wx.Frame):

def __init__(self, parent, id, title):

wx.Frame.__init__(self, parent, id, title, style=wx.THICK_FRAME)
self.Bind(wx.EVT_MOVE,self.OnMove)
self.panel = wx.Panel(self, -1)
self.panel.Bind(wx.EVT_PAINT, self.OnPaint)
self.panel.Bind(wx.EVT_KEY_DOWN, self.OnKeyDown)
self.panel.Bind(wx.EVT_KEY_UP, self.OnKeyUp)
self.panel.Bind(wx.EVT_MOUSEWHEEL,self.OnMouse)
self.panel.Bind(wx.EVT_MOTION,self.OnMotion)
self.panel.SetFocus()
self.fullscreenenable = True
self.fullscreenonoff = True
self.Centre()

def OnPaint(self, event):
dc = wx.PaintDC(self.panel)
w,h = self.panel.GetSize()
"""gc = wx.GraphicsContext.Create(dc)
gc.SetBrush(wx.Brush("rgb(100,100,100)"))
m = -20
while m < w:
m += 20
u = -20
while u < h:
u += 20
gc.DrawRectangle(m, u, 10, 10)
gc.DrawRectangle(m+10, u+10, 10, 10)"""
cr = wx.lib.wxcairo.ContextFromDC(dc)
cr.set_line_width(3)
cr.set_source_rgb(0,0,1)
cr.move_to(0,h/2)
cr.line_to(RainbowDisplay.displaywidth,h/2)
cr.stroke()

def OnKeyDown(self, event):
keycode = event.GetKeyCode()
if keycode == wx.WXK_ESCAPE and self.fullscreenenable == True and self.fullscreenonoff == True:
self.fullscreenonoff = False
self.fullscreenenable = False
self.ShowFullScreen(True,wx.FULLSCREEN_ALL)
self.Update()

if keycode == wx.WXK_ESCAPE and self.fullscreenenable == False and self.fullscreenonoff == True:
self.fullscreenonoff = False
self.fullscreenenable = True
self.ShowFullScreen(False)
self.Update()


def OnKeyUp(self, event):
keycode = event.GetKeyCode()
if keycode == wx.WXK_ESCAPE:
self.fullscreenonoff = True

def OnMouse(self, event):
num=event.GetWheelRotation()
print num

def OnMotion(self, event):
self.Refresh()

def OnMove(self, event):
RainbowDisplay.slider.SetValue(200)
self.Refresh()