RaspberryPi上的QML - 获取白屏

时间:2016-11-08 15:00:37

标签: qt raspberry-pi qml

我在QML中有一个小应用程序,可以在我的Linux机器上正常运行。但是当我尝试在Raspberry Pi上运行它时,它会显示一个内部只有空白区域的窗口。还有一部分文字项目 - 类似于最后3个字符 - 位于左上角。

我发现的各种主题都谈到了丢失的QML文件,但是我和可执行文件位于同一目录中。当我试图移动它们时,我至少得到一个无法找到的错误。

另一件事是,当我运行应用程序时,CPU使用率上升到300%。

在我的笔记本电脑上,我在RPi 5.3.2上有Qt 5.6.1。我正在使用Raspbian存储库中的库来编译RPi上的应用程序。

不确定是否相关,但也有警告:
libEGL warning: DRI2: failed to authenticate

我还尝试export QML_IMPORT_TRACE=1查看正在加载的QML文件,一切看起来都正确。

在main.cpp中加载QML文件如下所示:

QQmlApplicationEngine engine;
engine.load("qml/MainWindow.qml");

我也试过使用qrc,结果相同。而使用QQuickView而不是QQmlApplicationEngine导致了同样的事情。

可能是什么问题?或者我在哪里可以搜索更多信息?

编辑:

我尝试了一个QML示例(texteditor),使用与我的应用程序相同的工具构建。该示例没有任何问题,因此问题必须在我的代码中。

1 个答案:

答案 0 :(得分:0)

对于可能遇到同样问题的任何人。

问题在于根据Window设置尺寸,如下所示:

Rectagle {
    width: Window.width
}

更改为:

Rectagle {
    width: mainWindow.width
}

其中mainWindow是主QML文件中Window项的id。

不确定为什么这适用于Linux PC而不是Raspbian。