2010-01-02 21 views
3

我一直在努力學習的wxPython,我看到這個ID創建小部件時,如:wxpython上的widget id有什麼用處?

menubar = wx.MenuBar() 
file = wx.Menu() 
file.Append(-1, 'Quit', 'Quit application') 
menubar.Append(file, '&File') 

我讀過的東西,說當它被設置爲-1,其自動生成的,但什麼是真正的使用的id,以及它如何對事件有用?

+0

用於識別物品。 例如:可以通過提供項目ID從菜單中刪除菜單項。 – whunmr 2010-01-02 18:10:45

+0

是的,我想了一會兒發佈這個。不管怎麼說,還是要謝謝你。 – Marconi 2010-01-02 21:25:59

+1

@whunmr,也許你應該加上這個答案,所以OP可以接受它作爲解決方案。它對於那些從wxPython開始的人來說並不那麼明顯 – 2011-05-18 08:31:03

回答

8

ID用於識別,並在wxPython內部用於跟蹤窗口小部件,綁定事件或發出事件等,但大部分時間作爲wxPython的用戶,您不需要在任何地方設置或使用ID,因爲大多數情況下,你將使用python對象來引用widgets而不是id

>>> btn = wx.Button(win, label="click me") 
>>> btn.Bind(wx.EVT_BUTTON, on_click) 

所以你不需要設置任何ID或需要引用它。