我读过这个 Style Guide for wxPython code 上面写着:
3. Don't use IDs. There is very rarely a good reason to use them.
我也见过很多 wx.ID_ANY 在应用程序代码中。
wx.ID_ANY
问题:
为什么不建议使用ID?
如果无论如何都不应该使用ID,那么库为什么不简单地在API中隐藏ID呢?
您不想使用硬编码的ID,因为Wxpython本身保留了一些ID。这就是为什么我们 wx.ID_ANY . 这允许wxpython获取一个未使用的ID,这可以防止冲突,也可以防止难以发现的错误。
注意使用 wx.NewId 现在已弃用,应使用 wx.Window.NewControlId() 在Wxpython 4.
wx.NewId
wx.Window.NewControlId()