У меня есть класс, подобный следующему:
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
вокруг моего графического интерфейса.
Я видел, как установить таблица стилей для подклассов, но я не могу найти способ установить таблицу стилей для конкретного частного члена класса. Есть ли способ добиться этого?
По предположению Эйллана, установить имя объекта на вашу кнопку, и используйте Селектор идентификаторов в вашей таблице стилей:
m_button->setObjectName("myButton");
widget->setStyleSheet("QPushButton#myButton{...}");
m_button->setStyleSheet(m_button->styleSheet().append("background-color: rgb(9, 91, 255);"));
Это установит цвет фона только для m_button