Qt QPushButton的风格没有';不生效

Qt QPushButton的风格没有';不生效,qt,Qt,我在网上搜索了很长时间。但是没有用。请帮助或尝试给出一些如何实现这一点的想法 qss文件中的代码: .QPushButton:disabled{background-color: red;} .QPushButton#m_pUploadBtn:disabled{background-color: yellow;} 但是“m_pUploadBtn”的风格没有生效 .QPushButton:hover{color: red;} .QPushButton#m_pUploadBtn:hover{col

我在网上搜索了很长时间。但是没有用。请帮助或尝试给出一些如何实现这一点的想法

qss文件中的代码:

.QPushButton:disabled{background-color: red;}
.QPushButton#m_pUploadBtn:disabled{background-color: yellow;}
但是“m_pUploadBtn”的风格没有生效

.QPushButton:hover{color: red;}
.QPushButton#m_pUploadBtn:hover{color: yellow;}
只有禁用的属性未生效。
悬停,按下生效。

这是我对您的条件的最低示例。它工作正常。显示未对禁用按钮生效的示例

.QPushButton:hover{color: red;}
.QPushButton#m_pUploadBtn:hover{color: yellow;}
#include <QApplication>
#include <QPushButton>
#include <QVBoxLayout>

namespace {
    static const auto STYLE_SHEET =
        ".QPushButton:disabled{background-color: red;}"
        ".QPushButton#m_pUploadBtn:disabled{background-color: yellow;}"
        ".QPushButton:hover{color: red;}"
        ".QPushButton#m_pUploadBtn:hover{color: yellow;}";
}

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QWidget wid;

    auto btn1 = new QPushButton( "Btn", &wid );
    auto btn2 = new QPushButton( "UploadBtn", &wid );
    btn2->setObjectName( QStringLiteral( "m_pUploadBtn" ) );
    auto btn3 = new QPushButton( "DisabledBtn", &wid );
    btn3->setDisabled( true );
    auto btn4 = new QPushButton( "DisabledUploadBtn", &wid );
    btn4->setObjectName( QStringLiteral( "m_pUploadBtn" ) );
    btn4->setDisabled( true );

    auto lay = new QVBoxLayout( &wid );
    lay->addWidget( btn1 );
    lay->addWidget( btn2 );
    lay->addWidget( btn3 );
    lay->addWidget( btn4 );

    wid.setStyleSheet( STYLE_SHEET );
    wid.show();

    return a.exec();
}
#包括
#包括
#包括
名称空间{
静态常数自动样式表=
“.QPushButton:已禁用{背景色:红色;}”
“.QPushButton#m#u pUploadBtn:已禁用{背景色:黄色;}”
“.QPushButton:悬停{颜色:红色;}”
“.QPushButton#m#u pUploadBtn:hover{color:yellow;}”;
}
int main(int argc,char*argv[])
{
质量保证申请a(argc、argv);
qwid;
自动btn1=新的QPUSH按钮(“Btn”和&wid);
自动btn2=新的QPushButton(“上传BTN”、&wid);
btn2->setObjectName(QStringLiteral(“m_pUploadBtn”);
自动btn3=新的QPUSH按钮(“禁用的DBTN”和&wid);
btn3->setDisabled(真);
自动btn4=新的QPushButton(“DisabledUploadBtn”、&wid);
btn4->setObjectName(QStringLiteral(“m_pUploadBtn”);
btn4->setDisabled(真);
自动布局=新的QVBoxLayout(&wid);
lay->addWidget(btn1);
lay->addWidget(btn2);
lay->addWidget(btn3);
lay->addWidget(btn4);
宽度设置样式表(样式表);
wid.show();
返回a.exec();
}