4
从Python使用Qt窗口小部件的常用方式似乎是对它们进行子类化。PyQt子类化
Qt小部件类有很多方法,所以不可避免地我最终会在子类中添加一个方法,其名称与从Qt小部件继承的相同。在Python中,所有的方法都是虚拟的,所以我担心的是一些Qt代码最终可能会调用我的方法而不是预期的Qt - 在最坏的情况下,打破一些不容易显示的边界情况在测试中。
另一方面,也许所有的PyQt方法都只是C++代码的封装,当然这些方法不会受到我在Python子类化方面所做的任何事情的影响。
任何人都知道这是什么情况?
啊,PyQt那么远?当然,如果你想重写一个Qt方法,这是一个好消息,但是如果你不这样做的话会产生坏消息。那么,更好的做法是委托而不是子类? – rwallace 2009-12-01 20:33:14
如果你不想重写,请给它一个不同的名字。顺便说一下,代表什么意思? – Macke 2009-12-01 21:02:25
为什么不只是通过PEP 8进行操作并将所有方法命名为小写字母/下划线? Qt使用camelCase,所以你不会有任何冲突...除了可能的单字方法名称... – 2009-12-01 21:58:14