0

我想创建一个在运行时创建控件的类;例如:

self.Text1 = wx.TextCtrl( self.m_panel1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 50,-1 ), wx.TE_PROCESS_ENTER|wx.TE_PROCESS_TAB )
self.Text1.SetFont( wx.Font( 12, 74, 90, 90, False, wx.EmptyString ) )

转换这个(例如定义我的 ipotetic 库)

AddText(Text1, self.m_panel1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 50,-1 ), wx.TE_PROCESS_ENTER|wx.TE_PROCESS_TAB )
self.Text1.SetFont( wx.Font( 12, 74, 90, 90, False, wx.EmptyString ) )

可以在运行时创建和访问控制吗?

谢谢艾西丝。

4

1 回答 1

2

实际上我不久前写了一篇关于这个主题的文章,你可以在这里阅读:

这个想法是创建小部件,然后调用父级的 Layout() 方法以使其正确显示。如果你要添加很多小部件,那么你可能想要使用 ScrolledPanel 或类似的,否则小部件可能会被添加到屏幕外。

绑定动态小部件很棘手,因为您想在创建小部件之前定义事件处理程序。我手边没有任何例子。但是,您可能会从本文中获得一些关于一种方法的想法:

于 2013-10-24T14:32:26.047 回答