PyQt4传递转换矩阵作为构造函数的参数

时间:2016-04-13 15:01:06

标签: python qt python-3.x pyqt pyqt4

我正在为PyQt4编写一个小部件,项目样式指南规定我通过构造函数中的kwargs传递Qt元素的静态属性。

不幸的是,我无法为我想传递的属性找到正确的kwarg名称。

我目前的实现如下:

self.scene = QtGui.QGraphicsScene(self)
self.view = QtGui.QGraphicsView(self.scene, self.mainArea)

# Flip y axis for sane drawing
matrix = QtGui.QMatrix()
matrix.scale(1, -1)
self.view.setMatrix(matrix)

我希望找到一种方法将matrix传递给QGraphicsView构造函数,如果可能的话。

我试过以下

self.view = QtGui.QGraphicsView(self.scene, self.mainArea, matrix=matrix)
self.view = QtGui.QGraphicsView(self.scene, self.mainArea, transform=matrix)

但这两个实例都告诉我它们是未知的关键字参数。我不确定这是否可以通过构造函数实现,但我无法在任何地方找到明确的答案。

我也对#34;静态属性" Qt元素正是如此。

1 个答案:

答案 0 :(得分:1)

您确定您已正确理解风格指南吗?我怀疑它希望你使用kwargs设置每个可能的类的所有可能属性。 QGraphicsView班级有eighty properties。您是否认为Qt使用 80 可选参数定义构造函数是否合理?

我认为该指南更有可能只是要求您在任何可用的地方使用kwargs 。否则,您应该只使用属性setter函数。

PS:

QGraphicsView的{​​{3}}无论如何都不是属性,所以对于您的具体示例,这一点没有实际意义。