#c #qt
#c #qt
Вопрос:
Я пытался изменить цвет фона виджета QPlainTextEdit на черный и применить к нему эффект свечения. Но когда я применяю эффект DropShadowEffect к виджету QTextEdit или QPlainTextEdit, его цвет фона возвращается к исходному и отказывается меняться. Я использую Qt версии 5.12.2. Вот код:
#include <QtWidgets>
int main(int argc, char** argv)
{
QApplication app(argc, argv);
QMainWindow window;
window.setWindowTitle("Title");
window.setStyleSheet("QMainWindow{background-color: #191b21}");
window.setFixedSize(800, 600);
window.show();
QPlainTextEdit* w = new QPlainTextEdit(amp;window);
w->setGeometry(250, 50, 300, 50);
w->setStyleSheet("QPlainTextEdit{background-color: black; color: white;}");
QGraphicsDropShadowEffect* effect = new QGraphicsDropShadowEffect();
effect->setColor("#59f1ff");
effect->setBlurRadius(30);
effect->setOffset(.0);
w->setGraphicsEffect(effect);
w->show();
return app.exec();
}
Я пробовал использовать QPalette, но это тоже не сработает. Что я делаю не так?
Комментарии:
1. Я пробовал, кажется, что есть проблема с графическим эффектом. Если я не установлю эффект, он сработает
2. Поздравляем (и голосуем за), что вам удалось задать вопрос Qt с помощью MCVE. 😉