0

如何查看wxpython发布的各种事件的功能和属性?

当绑定函数被触发时,一个事件被发送到绑定函数,例如:

self.Bind(wx.EVT_BUTTON, self.eventButtonFunction, self.button)
...
def eventButtonFunction(self,event):

每个小部件(例如复选框、切换按钮等)都有一组不同的属性和功能。我在文档中找不到此信息,因此一直使用 dir 将它们全部打印出来,如下所示:

def eventButtonFunction(self,event):
    for s in dir(event):
        print s

这很烦人。这是在我缺少的某个地方的文档中吗?谢谢

4

2 回答 2

1

wxPython 文档不像底层 C++ wxWidgets 文档那样完整,因此在许多情况下,您必须使用 C++ 文档,通常将表单的所有符号转换wxFoowx.Foo.

您可能正在寻找类似这个 list的东西,它是映射到它们所应用的宏的所有事件类的列表,并且每个类都超链接到类定义,尽管它仍然不完整。

从内存中EVT_BUTTON生成 a wxCommandEvent,但如果您不确定要获得哪种事件类型,打印repr事件对象的 a 应该会有所帮助。

例如...

def eventButtonFunction(self, event):
    print repr(event)

...产量...

<wx._core.CommandEvent; proxy of <Swig Object of type 'wxCommandEvent *' at 0x21eaec> >

刚开始会有点痛,但是用了一段时间wxPython就会习惯了。

于 2013-04-25T13:21:50.687 回答
0

你必须去这些文档,诚然,这些文档令人困惑:

http://wxpython.org/docs/api/wx.Event-class.html

所有事件都源自该事件。因此,您必须单击一个子类才能查看添加了哪些其他方法。其中一些子类有额外的子类和方法。是的,有点丑。

于 2013-04-25T13:30:36.203 回答