点击“确定”的信号是什么? QColorDialog中的按钮。
我试过
self.color_chooser = QtWidgets.QColorDialog()
self.color_chooser.getColor()
self.color_chooser.currentColorChanged.connect(self.color_pick)
def color_pick(self):
print 'signaled'
没用。
答案 0 :(得分:1)
您要求的信号为colorSelected
,按OK按钮后会发出此信号
class Widget(QWidget):
def __init__(self, *args, **kwargs):
QWidget.__init__(self, *args, **kwargs)
self.color_chooser = QColorDialog()
self.color_chooser.colorSelected.connect(self.color_pick)
self.color_chooser.show()
def color_pick(self, color):
print('signaled', color)
如果要在按下OK按钮后获得颜色,可以使用以下其他方法:
class Widget(QWidget):
def __init__(self, *args, **kwargs):
QWidget.__init__(self, *args, **kwargs)
self.color_chooser = QColorDialog()
if self.color_chooser.exec_() == QColorDialog.Accepted:
print(self.color_chooser.currentColor())
class Widget(QWidget):
def __init__(self, *args, **kwargs):
QWidget.__init__(self, *args, **kwargs)
self.color_chooser = QColorDialog()
color = self.color_chooser.getColor()
if color.isValid():
print(color, color.name())