首页 > 解决方案 > 移动透明窗口QtQuick时显示错误

问题描述

因此,对于我当前的项目,我需要使用透明窗口。

在创建窗口时没有问题,它的工作原理是当您移动窗口时出现问题。

透明度不适用,因为它认为窗口是背景的一部分并在新的渲染中重现它。

我不知道我是否很清楚我在链接中放了一张图片,对于我不得不用笔记本电脑拍摄它的质量更抱歉,因为当我们捕获它时“刷新”显示和透明度再次变得正常。

另一个令人惊讶的事情是,如果后面是铬,透明度不会出错......

所以基本上问题是如何有一个“正常”的行为?

在这里,我希望您能帮助我,我在那里看不到解决方案。

在代码级别:

主.cpp:

#include <QQuickView>
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QQuickView * view = new QQuickView;

    view->setTitle("Test");
    view->setSource(QUrl::fromLocalFile ("main.qml"));
    view->setColor(Qt::transparent);
    view->show();

    return a.exec();
}

main.qml:

import QtQuick 2.0

Rectangle {

    width: 400
    height: 400
    color : "#00000000"

    Rectangle {
        anchors.centerIn: parent
        color: "red"
        width: 100
        height: 100
    }
}

结果

标签: qtqtquick2

解决方案


推荐阅读