我正在尝试做一个简单的设计来选择颜色,而我正在使用QToolButton来打开QColorDialog。 我的问题是我希望QToolButton是所选颜色,但我只是设置了背景颜色,这不是我想要的。
这是一张图片:
我的代码:
QColor color = QColorDialog::getColor(m_couleur);
if (color.isValid()) m_couleur=color;
m_labelCouleur->setPalette(QPalette(m_couleur));
m_labelCouleur->setAutoFillBackground(true);
m_buttonCouleur->setPalette(QPalette(m_couleur));
m_buttonCouleur->setAutoFillBackground(true);
基本上我希望QToolButton看起来像这样:
编辑:任何人都可以向我解释为什么网站不会让我在开头添加“大家好”?
答案 0 :(得分:5)
QColor color = QColorDialog::getColor(m_couleur);
QPixmap px(20, 20);
px.fill(color);
m_buttonCouleur->setIcon(px);
在这种情况下,没有涉及CSS(对于我来说)是大专业人士
答案 1 :(得分:2)
使用setStylesheet
功能更改按钮的背景颜色
m_buttonCouleur->setStyleSheet(QString("QToolButton{ background: %1; }").arg(m_couleur.name()));
答案 2 :(得分:2)
我通过使用QPushButton并将其样式表设置为颜色选择器的结果来完成。我想工具按钮可能应该是相同的。
button->setStyleSheet(QString("background-color: %1; "
"border: 1px; "
"border-color: black; "
"border-style: outset;").arg(color.name()));