Установить таблицу стилей для закрытого члена QWidget

У меня есть класс, подобный следующему:

class BigButton : public QWidget {

Q_OBJECT

public:

BigButton(QWidget* parent = nullptr);
virtual ~BigButton() = default;
void setSvgImagePath(const QString& imagePath);
void setLabel(const QString& label) override;

private:

QLabel* m_label;
QSvgWidget* m_svgImage;
QPushButton* m_button;
};

Я хочу создать таблицу стилей для своего приложения, которая позволяет установить некоторые свойства (например, цвет фона) частного QPushButton член m_button, но не другие QPushButton вокруг моего графического интерфейса.

Я видел, как установить таблица стилей для подклассов, но я не могу найти способ установить таблицу стилей для конкретного частного члена класса. Есть ли способ добиться этого?

0

Решение

По предположению Эйллана, установить имя объекта на вашу кнопку, и используйте Селектор идентификаторов в вашей таблице стилей:

m_button->setObjectName("myButton");

widget->setStyleSheet("QPushButton#myButton{...}");
2

Другие решения

 m_button->setStyleSheet(m_button->styleSheet().append("background-color: rgb(9, 91, 255);"));

Это установит цвет фона только для m_button

1

По вопросам рекламы [email protected]