Im正在寻找一种方法,将函数绑定到一个事件,该事件是由在wx.小发明可编辑列表框。我希望所选内容用用户可以编辑的字符串填充richTextCtrl1。在
下面是一个没有事件绑定或函数的UI设计的快速模型,因为我的实际应用程序要大得多。在
import wx
import wx.richtext
import wx.gizmos
def create(parent):
return myFrame(parent)
[wxID_MYFRAME, wxID_MYFRAMEMYEITABLELISTBOX, wxID_MYFRAMEMYFRAME_PANEL,
wxID_MYFRAMERICHTEXTCTRL1,
] = [wx.NewId() for _init_ctrls in range(4)]
class myFrame(wx.Frame):
def _init_ctrls(self, prnt):
wx.Frame.__init__(self, id=wxID_MYFRAME, name=u'myFrame', parent=prnt,
pos=wx.Point(551, 188), size=wx.Size(500, 500),
style=wx.DEFAULT_FRAME_STYLE, title=u'myPanel')
self.SetClientSize(wx.Size(498, 466))
self.SetInitialSize(wx.Size(500, 500))
self.myFrame_panel = wx.Panel(id=wxID_MYFRAMEMYFRAME_PANEL,
name=u'myFrame_panel', parent=self, pos=wx.Point(0, 0),
size=wx.Size(498, 466), style=wx.TAB_TRAVERSAL)
self.myEitableListBox = wx.gizmos.EditableListBox(id=wxID_MYFRAMEMYEITABLELISTBOX,
label=u'myEitableListBox', name=u'myEitableListBox',
parent=self.myFrame_panel, pos=wx.Point(8, 56), size=wx.Size(200,
248))
self.myEitableListBox.SetStrings(['this', 'that', 'other'])
self.richTextCtrl1 = wx.richtext.RichTextCtrl(id=wxID_MYFRAMERICHTEXTCTRL1,
parent=self.myFrame_panel, pos=wx.Point(224, 64),
size=wx.Size(248, 240), style=wx.richtext.RE_MULTILINE,
value=u'')
self.richTextCtrl1.SetLabel(u'')
def __init__(self, parent):
self._init_ctrls(parent)
if __name__ == '__main__':
app = wx.PySimpleApp()
frame = create(None)
frame.Show()
app.MainLoop()
我找不到解决办法wx.python公司演示示例。谷歌也帮不上什么忙。我尝试了Boa构造函数,并将一些事件绑定到可编辑列表框。以下是我尝试过的绑定,但都不起作用:
^{pr2}$我一直在看医生,并试图找到wx.python公司. 我还没有找到任何东西可以帮助我理解如何获得所选的列表项。如果我能得到选中的列表项,我想我可以创建一个填充ritchtextfield的函数。我不应该认为GetSelection()和其他东西都是我在尝试而未能理解正在发生的事情。也没有在控制台运行时产生的错误,所以我真的不知道从这里去哪里。在
谢谢
EditableListBox实际上包含一个ListCtrl,使用self.myEitableListBox.ListCtrl,通过使用返回的对象,可以绑定事件。在
下面添加了几行代码的示例将在EditableListBox中选择一个项时,将其添加到richtext控件中。在
有一个错误,因为使用了折旧后的PySimpleApp,请改用App,我在上面的代码中也做了更改。在
相关问题 更多 >
编程相关推荐