检查QColorDialog是否被取消

时间:2016-05-04 07:09:27

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

我在PyQt5中使用QColorDialog让用户选择一种颜色。我的代码如下所示:

result = QColorDialog.getColor(QColor(self.red, self.green, self.blue))
self.red, self.green, self.blue = result.red(), result.green(), result.blue()

到目前为止工作正常,但我无法检测用户是否取消了对话框。

即使取消对话框,返回的颜色仍为QColor(0, 0, 0, 255),而不是预期的None

有没有办法使用静态getColor方法检测对话框是否被取消?或者我是否必须手动构建QColorDialog实例?

1 个答案:

答案 0 :(得分:5)

使用QColor::isValid检查返回的颜色是否为有效颜色。