hola tengo una enorme duda no se como hacer checkable a un panel del wx.aui
aver si alguien me puede ayudar
Código python:
Ver originalimport wx
import wx.aui
import os
##
##class panel(wx.Panel):
## def __init__(self, parent, id):
## wx.Panel.__init__(self, parent, id)
##
## self.SetBackgroundColour("red")
##
##class note(wx.Notebook):
## def __init__(self, parent, id):
## wx.Notebook.__init__(self, parent, id)
##
## panel = wx.Panel(self)
## self.AddPage(panel, "no")
##
##
##
class frame(wx.Frame):
def __init__(self, parent, id, title):
wx.Frame.__init__(self, parent, id, title, size=(700, 600))
self.n = 0
self.x = 0
self.man = wx.aui.AuiManager()
self.man.SetManagedWindow(self)
menubar = wx.MenuBar()
archivo = wx.Menu()
archivo.Append(10, "&Salir")
ver = wx.Menu()
self.itool = ver.Append(500, '&Propiedades\tCtrl+U', kind=wx.ITEM_CHECK)
menubar.Append(archivo, "&Archivo")
menubar.Append(ver, "&Ver")
self.SetMenuBar(menubar)
self.man.AddPane(self.Create(), wx.aui.AuiPaneInfo().
Caption("panel").
Float().FloatingPosition(self.GetStartPosition()).Left().Layer(1).
CloseButton(True).MaximizeButton(True), wx.aui.AUI_MGR_TRANSPARENT_DRAG)
self.man.AddPane(self.CreatePanel(), wx.aui.AuiPaneInfo().
Name("test10").Caption("hello").
Bottom().Layer(1).Position(1).CloseButton(True).MaximizeButton(True))
self.man.Update()
self.man.AddPane(self.CreatePanel(), wx.aui.AuiPaneInfo().Name("text_content").
CenterPane().Hide())
self.man.GetPane("text_content").Show()
self.man.Update()
self.CreateStatusBar()
## self.note = note(self, -1)
##
## self.panel1 = panel(self.note, -1)
## self.note.AddPage(self.panel1, "nko")
##
self.Bind(wx.EVT_MENU, self.OnCreateText, id=500)
self.Bind(wx.EVT_ERASE_BACKGROUND, self.OnErase)
self.Bind(wx.EVT_SIZE, self.OnSize)
self.Bind(wx.aui.EVT_AUI_PANE_CLOSE, self.OnPaneClose)
def Create(self):
panel = wx.Panel(self, -1)
panel.SetBackgroundColour('red')
return panel
def CreatePanel(self):
text = wx.TextCtrl(self, -1)
return text
##
def OnCreateText(self, event):
if self.itool.IsChecked():
self.Create.Show()
else:
self.Create.Hide()
##
def OnPaneClose(self, event):
pass
def OnErase(self, event):
event.Skip()
def OnSize(self, event):
event.Skip()
def GetStartPosition(self):
self.x = self.x + 20
x = self.x
pt = self.ClientToScreen(wx.Point(0, 0))
return wx.Point(pt.x + x, pt.y + x)
app = wx.App()
frame(None, -1, "tr").Show()
app.MainLoop()
ya busque hacerlo tambien con una pagina de un notebook pero no puedo hacerlo
saludos!!