为什么不建议在wxPython中使用ID?

时间:2018-07-02 09:21:31

标签: wxpython wxpython-phoenix

我读了Style Guide for wxPython code,上面写着:

3. Don't use IDs. There is very rarely a good reason to use them.

我还在应用程序代码中看到了很多wx.ID_ANY

问题:

  1. 为什么不建议使用ID?

  2. 为什么如果不应该使用ID,库为什么不直接在API中隐藏ID?

1 个答案:

答案 0 :(得分:1)

您不想使用硬编码的ID,因为wxPython本身保留了一些ID。这就是为什么我们有wx.ID_ANY。这使wxPython可以获取未使用的ID,从而防止冲突,也防止难以发现的错误。

请注意,现在不建议使用wx.NewId,而应在wxPython 4中使用wx.Window.NewControlId()