【发布时间】:2011-01-30 22:03:04
【问题描述】:
大家好,
我目前正在开发一个使用 Python 和 wxPython 的应用程序。 在其中我有一个对话框,其中填充了几个字段,以便在数据库中插入“文档”。 该对话框的布局基本上由一个 wx.Notebook 组成,带有几个“选项卡”,每个选项卡都包含某种字段。
# Dialog class
class NovoRegisto(wx.Dialog):
def __init__(self,parent):
wx.Dialog.__init__(self, parent, title='Registar Nova O.T.', size=(900,600))
painel = wx.ScrolledWindow(self, -1, style=wx.VSCROLL|wx.HSCROLL)
painel.SetScrollbars(0,30,0,500)
notebook = wx.Notebook(painel)
# create the page windows as children of the notebook
pag1 = InfoOT(notebook)
pag2 = Avaliacao(notebook)
pag3 = Componentes(notebook)
pag4 = Material(notebook)
pag5 = OTsRelacionadas(notebook)
<...>
# function to insert data in SQLite database
def OnRegister(self,event):
<...>
# first tab class
class InfoOT(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent)
<...>
如您所见,我为 Dialog 本身设置了一个类(定义由“注册”按钮控制),然后为笔记本的每个“选项卡”设置了一个不同的类。
现在,为了将数据提交到数据库,我必须能够访问“OnRegister”定义(属于 Dialog 的类)中的“tabs”变量。但是,我仍然没有找到方法。
谁能帮帮我?我必须改变我的程序结构吗?我这样做是因为这是我设法让笔记本工作的唯一方法......
提前谢谢你
【问题讨论】:
-
@delnan,我认为“标签”只是指 pag1、pag2 等。
-
@jambox,是的,你是对的