QToolButton和颜色

时间:2012-06-11 14:52:01

标签: c++ qt qt4

我正在尝试做一个简单的设计来选择颜色,而我正在使用QToolButton来打开QColorDialog。 我的问题是我希望QToolButton是所选颜色,但我只是设置了背景颜色,这不是我想要的。

这是一张图片:

enter image description here

我的代码:

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看起来像这样:

enter image description here

编辑:任何人都可以向我解释为什么网站不会让我在开头添加“大家好”?

3 个答案:

答案 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()));