我正在使用Qt 5.0.1。我想使用样式表语法来自定义小部件及其元素的功能。
但有些语法如QLineEdit { color: red }
或
QPushButton#evilButton:pressed {
background-color: rgb(224, 0, 0);
border-style: inset;
}
不起作用,编译器会出错。
我改变了一些语法并得到了答案。例如:
QPushButton#evilButton {
background-color: red;
border-style: outset;
border-width: 2px;
border-radius: 10px;
border-color: beige;
font: bold 14px;
min-width: 10em;
padding: 6px;
}
转换为:
mypushbutton->setStyleSheet("background-color:purple;"
"border-style:inset;"
"border-width: 4px;"
"border-color: green;"
"border-radius: 10px;"
"font: bold 14px;"
"min-width: 10em;"
"padding: 6px;"
);
实际上我使用了另一个函数来做到这一点。但是我无法更改第一个代码而不知道该怎么做......我应该怎么做?我应该include
什么或其他东西是问题?我使用this页面来学习样式表语法。即使我自己的Qt的例子不起作用,只是错误引起...... !!! ???
答案 0 :(得分:7)
试过你的例子,它适用于Qt5
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
this->setStyleSheet(
"QPushButton#evilButton {"
"background-color: red;"
"border-style: outset;"
"border-width: 2px;"
"border-radius: 10px;"
"border-color: beige;"
"font: bold 14px;"
"min-width: 10em;"
"padding: 6px; }"
);
}
btw我将qss存储在文件中并从中加载样式