C++ Qt5.1.1:QWebView不';无法加载本地html文件
我一直在努力解决一个关于加载本地html文件的问题。我不认为QWebView是显示此文件的正确方式。我的问题是,虽然在调试中运行时.html文件是可见的,但当我尝试在发行版中运行时,它是不可见的。我将文件包含在适当的目录中,因此这不是问题所在。是否有我可能丢失的其他设置、LIB和DLL?我在QWebView的URL字段中获得了QtCreator中指定给QWebView的文件。如下所示:C++ Qt5.1.1:QWebView不';无法加载本地html文件,c++,qt,qt-creator,qt5,C++,Qt,Qt Creator,Qt5,我一直在努力解决一个关于加载本地html文件的问题。我不认为QWebView是显示此文件的正确方式。我的问题是,虽然在调试中运行时.html文件是可见的,但当我尝试在发行版中运行时,它是不可见的。我将文件包含在适当的目录中,因此这不是问题所在。是否有我可能丢失的其他设置、LIB和DLL?我在QWebView的URL字段中获得了QtCreator中指定给QWebView的文件。如下所示: file:///C:/devel/projects/myProject/myProject/Resources
file:///C:/devel/projects/myProject/myProject/Resources/page.htm
我也将文件更改为.html,这似乎没有什么区别
谢谢,
-K
编辑:我已将其临时更改为:
waiver_webView_2->setUrl(QUrl::fromLocalFile("file:///C:/devel/projects/myProject/myProject/Resources/page.htm"));
不幸的是,这仍然不起作用。我已经核实过了,文件确实存在。当我通过Qt Creator将该位置提供给URL时,它可以在发行版中的开发人员机器上工作,但不能在我部署到的机器上工作,尽管文件夹结构完全相同 我能找到的最好方法是先获取文件的绝对路径,然后将该路径与QUrl一起使用。有一个关于这个主题的qt论坛帖子,我将把它作为一个源代码放在下面。它可以根据您的代码进行调整,如下所示:
waiver_webView->load(QUrl::fromLocalFile(QFileInfo("page.htm").absoluteFilePath()));
QFileInfo也需要包括在内
source您可以写入加载。请改用setUrl。请使用QUrl(“file:///....)或QUrl::fromLocalFile(“C:/…”)。fromLocalFile()从路径生成文件:///url,因此传入
文件://
后,您将得到文件:file:///C:/...
@FrankOsterfeld啊,这很有道理。它最终在本地修复了它,但是如何使用相对路径格式化URL路径呢?我正试图让它在我部署到的另一台机器上工作。当前正在尝试,但使用失败:webView\u 2->setUrl(QUrl::fromLocalFile(“..\\Resources\\page.htm”)代码>