首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QML QtGraphicalEffect未在目标计算机中呈现

QML QtGraphicalEffect未在目标计算机中呈现
EN

Stack Overflow用户
提问于 2017-11-19 23:19:16
回答 1查看 300关注 0票数 1

我编写了一个显示ImageDropShadow的最小示例

代码语言:javascript
复制
import QtQuick 2.9
import QtQuick.Window 2.2
import QtGraphicalEffects 1.0

Window {
    visible: true
    color: "black"

    Image {
        id: imgBackground
        source: "file:///path-to-background.png"

        Image {
            id: imgSpinner
            source: "file:///path-to-spinner.png"
            x: imgBackground.width / 2 - imgSpinUp.width / 2
            y: 260
            visible: false
            antialiasing: true
        }

        DropShadow {
             id: sdwSpinner
             anchors.fill: imgSpinner
             horizontalOffset: 8
             verticalOffset: 8
             radius: 4.0
             samples: 17
             color: "#AA000000"
             source: imgSpinner
        }
    }
}

在开发机器中,一切工作正常:我看到的图像和它的阴影一样。现在,我想将其部署到目标计算机上。为了找到所需的文件,我创建了一个全新安装了操作系统的虚拟机,并尝试运行我的应用程序。按照预期工作,很好!

最终,我将相同的文件部署到我的客户机器上...这里没有呈现DropShadow!如果我设置了图像的visible属性,我就可以看到它(即路径是ok的)。因此,QtGraphicalEffects就不起作用了。

所有这三台机器(开发、虚拟机、客户的计算机)都运行相同的操作系统:Windows7家庭高级版64位。Qt版本是5.9 MinGW。

下面是我部署的文件:

代码语言:javascript
复制
imageformats/
images/
platforms/
QtGraphicalEffect/
QtQml/
QtQuick/
QtQuick.2/
libgcc_s_dw2-1.dll
libstdc++-6.dll
libwinpthread-1.dll
opengl32sw.dll
Qt5Core.dll
Qt5Gui.dll
Qt5Network.dll
Qt5Qml.dll
Qt5Quick.dll
myapplication.exe

开发/虚拟机显卡为GeForce GTX670,客户显卡为Intel GMA4500。

是什么阻止了这种项目的呈现呢?

EN

回答 1

Stack Overflow用户

发布于 2017-11-20 19:22:28

这听起来像是openGL的问题。

注意:某些效果可能并不适用于所有图形API。在大多数情况下默认使用的OpenGL对它们都有完全的支持。然而,例如,软件后端根本不支持效果。因此,当使用OpenGL以外的图形API运行时,请参考相关QML类型的文档,以检查效果是否可用。有关Qt快速场景图后端的详细信息,请参见场景图自适应。

http://doc.qt.io/qt-5/qtgraphicaleffects-index.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47378457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档