При открытии диалога в qt фон шрифта и svg иногда меняются.
На рисунке ниже показан диалог qt с нормальной работой. На рисунке ниже показаны некоторые необычные поведения в qt. Эта проблема встречается очень редко.
Это код конструктора диалога.
Dlg::Dlg(std::string mount_name, std::string user_name, QWidget *parent)
: QDialog(parent)
{
if (mount_name.empty() || user_name.empty())
{
throw AERROR::FAILED;
}
ui_.setupUi(this);
setWindowFlags(Qt::Window);
QPalette pal = palette();
pal.setColor(QPalette::Background, QColor(255, 187, 0));
ui_.menubar->setAutoFillBackground(true);
ui_.menubar->setPalette(pal);
QFont font = ui_.drive_subtitle->font();
font.setPointSize(12);
ui_.drive_subtitle->setFont(font);
ui_.drive_subtitle->setStyleSheet("QLabel { color : black; }");
ui_.drive_subtitle->setFixedHeight(32);
ui_.drive_subtitle->setText(user_name.c_str());
QHBoxLayout *loading_layout = ui_.loading_layout;
loading_layout->setAlignment(Qt::AlignCenter);
flat_loading_ = new FlatLoading(this);
flat_loading_->Initialize();
flat_loading_->MakeTransparent();
flat_loading_->setFixedSize(QSize(30, 30));
flat_loading_->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed));
flat_loading_->setFrameShape(QFrame::NoFrame);
flat_loading_->setStyleSheet("* { background-color: rgb(255, 187, 0); border-color: rgb(255, 187, 0); }");
loading_layout->addWidget(flat_loading_);
ui_.status_label->setAlignment(Qt::AlignLeft | Qt::AlignVCenter);
ui_.status_label->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Fixed);
}
Эта проблема возникает настолько редко, что слишком трудно найти причина. Мне нужна чья-то помощь.