我想知道是否有一個字典包含wxPython類的字符串版本(如'按鈕'爲wx.Button)到他們調用的事件。這是我想要的:{'Button': wx.EVT_BUTTON, ...}
。在模塊或網頁的任何地方是否有這樣的字典?wxPython字典的類他們調用的事件
1
A
回答
0
wxGlade知道這一點:對於每一個Widget
有來自class ManagedBase
獲得的class EditWidget
具有類屬性events
持有Widget
發送的事件的名稱:
例如在widgets/bitmap_button/bitmap_button.py你會發現
class EditBitmapButton(ManagedBase):
events = ['EVT_BUTTON']
你可以收集你想通過導入所有這些類的信息(可自動完成,我認爲),閱讀他們的events
屬性。
0
這是我做的(可能是從郵件列表在一段時間內服用):
for i in dir(wx):
if i.startswith('EVT_'):
print i
顯然,這不正是你問什麼,但結果卻是非常直觀弄清楚什麼是什麼。
0
要闡述什麼DrBloodmoney說:
adict = {}
for k,v in dir(wx):
if k.startswith('EVT_'):
adict[k[3:]] = v
然而,請注意,雖然EVT_SOMETHING是一個事件類,並且是唯一的,但沒有保證Event對象的ID號是唯一的(不要與Python的id()內置函數混淆)。
此外,當你,'None',說:「我想知道是否有一個字典包含wxPython類的字符串版本(如'按鈕'爲wx.Button)到他們所調用的事件。我認爲你的意思是「小部件明確擁有事件處理程序的事件;事件處理程序通常是像wx.Button.OnPaint()這樣的類方法。」
要找到任何窗口小部件具有的事件處理程序,並且例如不使用wxGlade時,可以打開每個窗口小部件Python模塊文件。例如:
\ python的\ LIB \站點包\ WX-2.8-MSW-unicode的\ WX \ LIB \ buttons.py
還記得而WX小部件可能無法處理事件鍵入像wx.EVT_BUTTON,這並不意味着它不能。此外,這樣一個小部件可能會將某些事件類型傳遞給它的父級,無論這裏是否有事件處理程序或其父項;就像一個wx.Panel小部件一樣。
相關問題
- 1. wxPython:手動調用事件
- 2. 存儲在字典中的事件,然後再撫養他們
- 3. wxPython的事件多類
- 4. 通用集合&字典類的事件
- 5. 如何解決調用的wxpython事件?
- 6. 用於panel.Show()的wxpython事件
- 7. Python函數使用字典存儲他們的名字遞歸調用對方
- 8. wxPython - 將字典設置爲事件對象
- 9. wxpython:從wx.lib.sheet.CSheet對象更新字典或其他適當的數據類型
- 10. wxpython創建調用其他類的工具欄
- 11. wxpython中的文本事件
- 12. wxpython中的事件處理
- 13. Python字典如何讓他們爲了
- 14. 通過C中的線程調用其他類的事件#
- 15. 調用字典內的字典的值(讀取JSON文件)
- 16. 字典中的字典調用
- 17. 請求元素爲他們的事件
- 18. 不能在他們的onclick事件
- 19. wxPython:在面板更新上未調用的onPaint事件
- 20. 加入使用LINQ兩個表,並填寫他們的字典
- 21. 與其他字典,其他字典鍵
- 22. wxPython:在OSX上獲取CMD + [其他鍵]的EVT_KEY_DOWN事件
- 23. 映射一個RDD的值,以他們的字典中的值
- 24. 結合類型的字典列表中,如果他們有相同的密鑰
- 25. 調用其他類的類
- 26. 試圖通過迭代字典與他們的名字重命名文件
- 27. 排序字典使用其他字典的鍵的值
- 28. 類的字典
- 29. 使用字典作爲其他字典中的關鍵字
- 30. wxPython的回調