QSS에는 비슷한 용도가 있습니다.
QPushButton#minBtn {
border-radius:2px;
border-image:url(:/images/btn_mini_normal.png);
}
#minBtn은 objectName이 minBtn 인 버튼 컨트롤을 정확하게 지정하는 속성이며 다른 버튼 컨트롤에는 영향을주지 않습니다.
그러나 minBtn은 클래스에서 정의한 QPushButton 객체의 이름이 아니라 objectName () 인터페이스를 사용하여 QSS에서 지정한 이름입니다. 예 :
class XWidget : public QWidget {
Q_OBJECT
public:
explicit XWidget(QWidget *parent = nullptr);
private:
QPushButton *button;
};
이 객체에서 QPushButton의 변수 명은 button으로 정의되어 있으며, 버튼의 이름으로 QSS에서 버튼의 속성을 설정하면 효과가 없습니다. QSS는이 제어에 대해 알지 못하기 때문입니다. 이 컨트롤이 있음을 QSS에 알리려면 setObjectName ()으로 지정해야합니다.
button->setObjectName("minBtn");
그런 다음 QSS에서 이름 minBtn을 사용하여 적용 할 설정 단추 속성을 지정합니다.