我QAction
在小部件的构造函数中创建了几十个对象,但没有给它们变量名。
的许多属性QAction
可以在构造函数中正确设置(例如shortcut
,信号连接statusTip
等)。
是否可以QAction
在构造函数中设置为分隔符以及如何设置?
PS我认为这不是一个特定于语言的问题,但仅供参考,这就是我正在使用的:
蟒蛇2.7.6;PyQt4 4.10.3;Qt 4.8.5。
最简洁的答案是不。
PyQt对属性的支持只允许您在构造函数中设置 Qt 定义的属性。快速浏览QAction 的属性部分可以确认没有separator
属性,因此您不能以这种方式设置它。
当然,有一个非常简单和明显的解决方法。只需定义您自己的 QAction 子类,并在其中进行必要的配置__init__
:
class Action(QtGui.QAction):
def __init__(self, *args, **kwargs):
super(Action, self).__init__(*args, **kwargs)
self.setSeparator(kwargs.get('separator', False))