1

我想做一个 QLabel 的子类,它充当布尔切换按钮。我希望能够分配任何像素图,并在按钮状态为 False 时使图像去饱和。我猜想这可以用 QColor 以某种方式完成,但我不确定我将如何实现它。有任何想法吗?

4

1 回答 1

2

您应该能够使用QGraphicsColorizeEffect做您想做的事情:

    self.label = QtGui.QLabel(self)
    effect = QtGui.QGraphicsColorizeEffect(self.label)
    effect.setStrength(0.0)
    effect.setColor(QtGui.QColor('silver'))
    self.label.setGraphicsEffect(effect)

要切换效果,请根据需要设置强度

    if self.label.graphicsEffect().strength():
        self.label.graphicsEffect().setStrength(0.0)
    else:
        self.label.graphicsEffect().setStrength(0.5)
于 2014-03-26T21:53:23.893 回答