panel parzialmente visibile
Von: Teo (matgranz@gmail.com) [Profil]
Datum: 15.06.2008 22:58
Message-ID: <95196590-961d-450e-a387-47035826ca4f@34g2000hsh.googlegroups.com>
Newsgroup: it.comp.lang.python
Datum: 15.06.2008 22:58
Message-ID: <95196590-961d-450e-a387-47035826ca4f@34g2000hsh.googlegroups.com>
Newsgroup: it.comp.lang.python
Salve a tutti, sto sviluppando un'applicazione nella quale la finestra principale apre su comando una di dialogo per impostare un valore poi visualizzato sulla principale. Per fare ciò ho dovuto prima definire una nuova classe wx.panel, poi la finestra di dialogo e quindi il wx.Frame principale. Quando vado ad inserire il panel personalizzato nel frame esso risulta parzialmente visibile, quasi coperto. Scusate ma sono due giorni che non ne vengo fuori. Di seguito il codice con le parti non rilevanti omesse. grazie ------------------ import wx import sys import os class MainPanel(wx.Panel): def __init__(self, parent, id, title): wx.Panel.__init__(self, parent, id) mainbox = wx.BoxSizer(wx.VERTICAL) panel = wx.Panel(self, -1) vbox = wx.BoxSizer(wx.VERTICAL) panel_op_smkt = wx.Panel(panel, -1) vbox_op_smkt = wx.BoxSizer(wx.VERTICAL) grid_op_smkt = wx.GridSizer(2, 2, 0, 5) grid_op_smkt.Add(wx.StaticText(panel_op_smkt, -1, 'op:')) self.static_op = wx.StaticText(panel_op_smkt, -1, '') grid_op_smkt.Add(self.static_op) grid_op_smkt.Add(wx.StaticText(panel_op_smkt, -1, 'smkt:')) grid_op_smkt.Add(wx.StaticText(panel_op_smkt, -1, '')) vbox_op_smkt.Add(grid_op_smkt) panel_op_smkt.SetSizer(vbox_op_smkt) vbox.Add(panel_op_smkt, 0, wx.ALL | wx.EXPAND, 5) panel_prod = wx.Panel(panel, -1) sizer_prod = wx.StaticBoxSizer(wx.StaticBox(panel_prod, -1, 'titolo'), orient=wx.VERTICAL) vbox_prod = wx.BoxSizer(wx.VERTICAL) grid_prod = wx.GridSizer(2, 2, 0, 5) grid_prod.Add(wx.StaticText(panel_prod, -1, 'testo:')) grid_prod.Add(wx.TextCtrl(panel_prod, -1, 'testo')) grid_prod.Add(wx.StaticText(panel_prod, -1, 'testo:')) grid_prod.Add(wx.TextCtrl(panel_prod, -1, 'testo')) vbox_prod.Add(grid_prod) sizer_prod.Add(vbox_prod, 0, wx.TOP | wx.EXPAND, 4) panel_prod.SetSizer(sizer_prod) vbox.Add(panel_prod, 0, wx.BOTTOM | wx.EXPAND, 15) mainbox.Add(vbox, 1, wx.ALL | wx.EXPAND, 5) panel.SetSizer(mainbox) class OpW(wx.Dialog): def __init__(self, parent, id, title): wx.Dialog.__init__(self, parent, id, title, size=(250, 210)) ... class PTFrame (wx.Frame): def __init__(self, parent, id, title): wx.Frame.__init__(self, parent, id, title, wx.DefaultPosition, wx.Size(400, 350)) menubar = wx.MenuBar() file = wx.Menu() about = wx.MenuItem(file, 101, '&About', 'Informazioni') file.AppendItem(about) file.AppendSeparator() quit = wx.MenuItem(file, 102, '&Esci\tCtrl+Q', 'Esci') file.AppendItem(quit) menubar.Append(file, '&File') self.SetMenuBar(menubar) self.Bind(wx.EVT_MENU, self.OnAbout, id=101) self.Bind(wx.EVT_MENU, self.OnQuit, id=102) toolbar = self.CreateToolBar() my_path = os.path.dirname(os.path.abspath(sys.argv[0])) op_icon_path = os.path.join(my_path,'icons','Administrator_3_rid.png') toolbar.AddSimpleTool(103, wx.Image(op_icon_path, wx.BITMAP_TYPE_PNG).ConvertToBitmap(), 'Op', '') smkt_icon_path = os.path.join(my_path,'icons','Globe_rid.png') toolbar.AddSimpleTool(104, wx.Image(smkt_icon_path, wx.BITMAP_TYPE_PNG).ConvertToBitmap(), 'Smkt', '') exp_icon_path = os.path.join(my_path,'icons','Clipboard_rid.png') toolbar.AddSimpleTool(105, wx.Image(exp_icon_path, wx.BITMAP_TYPE_PNG).ConvertToBitmap(), 'Esp', '') toolbar.Realize() self.Bind(wx.EVT_TOOL , self.OnOperator, id=103) panel = wx.Panel(self, -1) box = wx.BoxSizer(wx.VERTICAL) mainpanel = MainPanel(panel, -1, title) box.Add(mainpanel, 1, wx.EXPAND | wx.ALL) panel.SetSizer(box) self.CreateStatusBar() self.Centre() def OnAbout(self, event): self.Close() def OnQuit(self, event): self.Close() def OnOperator(self, event): chop = OpFrame(None, -1, 'OpW') chop.ShowModal() chop.Destroy() class PT(wx.App): def OnInit(self): frame = PTFrame(None, -1, 'PT') frame.Show(True) return True app = PT(0) app.MainLoop()[ Auf dieses Posting antworten ]
Antworten
- Fabio Pliger (15.06.2008 23:58)
- Y3s (15.06.2008 23:59)
