我读了Style Guide for wxPython code,上面写着:
3. Don't use IDs. There is very rarely a good reason to use them.
我还在应用程序代码中看到了很多wx.ID_ANY
。
问题:
为什么不建议使用ID?
为什么如果不应该使用ID,库为什么不直接在API中隐藏ID?
答案 0 :(得分:1)
您不想使用硬编码的ID,因为wxPython本身保留了一些ID。这就是为什么我们有wx.ID_ANY
。这使wxPython可以获取未使用的ID,从而防止冲突,也防止难以发现的错误。
请注意,现在不建议使用wx.NewId
,而应在wxPython 4中使用wx.Window.NewControlId()
。