Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt QML映像在长时间延迟后从源加载_Qt_Qml_Qt Quick_Qtnetwork_Qqmlapplicationengine - Fatal编程技术网

Qt QML映像在长时间延迟后从源加载

Qt QML映像在长时间延迟后从源加载,qt,qml,qt-quick,qtnetwork,qqmlapplicationengine,Qt,Qml,Qt Quick,Qtnetwork,Qqmlapplicationengine,我正在开发一个Qt Quick应用程序,通过网络提供“main.qml”文件: QQuickView vv; vv.engine()->setNetworkAccessManagerFactory(new MyFactory()); vv.setSource(QUrl("http://192.168.1.101/main.qml")); vv.showFullScreen(); main.qml文件是: import QtQuick 2.7 import QtQuick.Window 2

我正在开发一个Qt Quick应用程序,通过网络提供“main.qml”文件:

QQuickView vv;
vv.engine()->setNetworkAccessManagerFactory(new MyFactory());
vv.setSource(QUrl("http://192.168.1.101/main.qml"));
vv.showFullScreen();
main.qml文件是:

import QtQuick 2.7
import QtQuick.Window 2.2
Image
{
    id :pencere
    width: Screen.width
    height: Screen.height
    source: "back.png"
}
我使用这个工具创建了文件服务器

我正在运行我的应用程序,它从服务器获取qml文件。应用程序以白色屏幕启动,等待很长时间,然后加载图像并显示。如输出所示,它在请求main.qml后很长时间请求图像文件:

为什么它要求比qml文件晚1分钟?如何缩短持续时间


如果我在互联网上设置一个映像,这种情况也会发生。我确信HFS没有问题。

想想看——在下载请求映像的QML文件之前,应用程序怎么可能知道它需要下载该映像文件?我很聪明,知道这一点。在qml中找到要下载的映像并下载它不需要1分钟?请为
image.status添加调试输出,并将其与服务器的日志进行比较。通常从Internet加载图像需要几毫秒,因此我认为问题出在您的计算机上。可能是DNS查找或防火墙。有趣的是,映像在QML完成加载后恰好一分钟开始加载,好像有超时。@标记,如果我有多个映像,则请求比QML晚1分钟启动,但在一秒钟内下载所有映像。