无法在QMessageBox中为按钮设置样式表

时间:2017-05-11 10:33:17

标签: qt stylesheet qpushbutton qmessagebox

我不知道setStyleSheet我错在哪里,但结果并不像我想要的那样。你能告诉我问题出在哪里吗?

if (!closedialog) {
        closedialog = new QMessageBox(this);
}
closedialog->setWindowModality(Qt::WindowModal);
closedialog->setWindowTitle("Hello");
closedialog->setText("This is an example message.");
closedialog->setStandardButtons(QMessageBox::Yes | QMessageBox::No);
closedialog->button(QMessageBox::Yes)->setStyleSheet("QPushButton{border-image: url(:/dptv/graphics/PTV_Button_yes.png);}"
    "QPushButton:hover{border-image: url(:/dptv/graphics/PTV_Button_yes_mouseover.png);}");
closedialog->setButtonText(QMessageBox::Yes, "");
closedialog->setButtonText(QMessageBox::No, "");
int click = closedialog->exec();
if (click == QMessageBox::Yes) {

}

1 个答案:

答案 0 :(得分:0)

好的,我发现了问题

closedialog->button(QMessageBox::Yes)->setObjectName("Yes");
setStyleSheet("QPushButton#Yes{border-image: url(:/dptv/graphics/PTV_Button_yes.png);}"
"QPushButton#Yes:hover{border-image: url(:/dptv/graphics/PTV_Button_yes_mouseover.png);}");

我忘了将图片添加到.qrc