У меня есть бескаркасная программа QtWebEngine, которая мигает при смене фокуса после запуска на экране без панели задач и увеличения окна.
Отлично работает на экране с панелью задач.
Вот мой тестовый код:
#include <QWidget>
#include <QHBoxLayout>
#include <QApplication>
#include <QWebEngineView>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget* widget = new QWidget(0);
widget->setWindowFlags(Qt::FramelessWindowHint);
QHBoxLayout* lay_parent = new QHBoxLayout;
QWebEngineView *webView = new QWebEngineView;
webView->load(QUrl("https://qt.io"));
widget->show();
lay_parent->addWidget(webView);
widget->setLayout(lay_parent);
widget->showMaximized();
return app.exec();
}
Я попытался настроить OpenGL
, и он работает.
Но на некоторых машинах программа не запускается.
QCoreApplication::setAttribute(Qt::AA_UseOpenGLES);
или
QCoreApplication::setAttribute(Qt::AA_UseSoftwareOpenGL);
Есть ли лучший способ предотвратить его мерцание?
Это моя тестовая среда:
Операционная система : Windows 7, Windows 10
Qt : 5.9.6, 5.12.1