参考:https://bbs.csdn.net/topics/392484482?page=2
官方有提到该问题。尤其是使用qml时,一定会出现这个遮挡问题。
https://doc.qt.io/qt-5/windows-issues.html
默认的qml工程的解决代码如下:
...
#include <QWindow>
#include <QtPlatformHeaders/QWindowsWindowFunctions>
...
int main(int argc, char *argv[])
{
...
QQmlApplicationEngine engine;
const QUrl url(QStringLiteral("qrc:/qml/main.qml"));
QObject::connect(&engine, &QQmlApplicationEngine::objectCreated,
&app, [url](QObject *obj, const QUrl &objUrl) {
if (!obj && url == objUrl)
QCoreApplication::exit(-1);
}, Qt::QueuedConnection);
engine.load(url);
auto tlwWindow = (QWindow*)engine.rootObjects().first();
QWindowsWindowFunctions::setHasBorderInFullScreen(tlwWindow, true);
...
}