是否有可能为QinputDialog设计风格?
我有以下代码:
void calibratemotors::on_pushButton_shuttopen_manualent_clicked()
{
bool ok;
double shutopen_manenter = QInputDialog::getDouble(this, "getDouble",
"Some Number:", 0.00, -10000, 10000, 2, &ok);
if (ok)
ui->label->setText(QString("%1").arg(shutopen_manenter));
}
问题是,它是否继承了“this”的各个方面,例如背景颜色,边框等。我试图添加一行:
this->setStyleSheet( "QInputDialog {background-color: red;}" );
在点击但也改变了父窗口,所以是否可以只触发说出QInputDialog的背景颜色而不影响父窗口?现在我得到这个:
之前:
后:
它像父母的背景一样被剥离并恢复为默认的系统颜色。
使用QInputDialog
而不是QMenu
。在这种情况下setStyleSheet( "QInputDialog {background-color: red;}" );
。一个好的做法是指出它将影响的小部件。根据你告诉我你的基本小部件是QDialog
。
“*”使样式仅适用于该窗口小部件,不会级联到其他窗口小部件。
这是一个例子。
setStyleSheet( "QDialog{background-color: black;}"
"QInputDialog {background-color: red;};");
ui->label->setStyleSheet("*{background-color: green;}");
输出: