问题标签 [qwebengineview]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - QWebEngineView 减慢 QGraphicsScene
在一个朋友和我正在做的 3D CAD 程序中,添加 QWebEngineView 会减慢 QGraphicsScene。
我们逐层创建 3D 模型,我们在每一层中放置 2D 点(这些点由 QGraphicsScene 绘制),然后使用 QWebEngineView,我们使用 WebGL 以 3D 显示模型(所以基本上,我们将 2D 3D 球体中的点)。
在创建 QWebEngineView 之前,我们可以在 QGraphicsScene 中围绕屏幕平滑移动一组点,但是在创建之后,它会变慢并且不再平滑(慢 2 到 3 倍)。
首先我们认为它来自 webGL,我们将页面的 URL 切换到 Google。它和以前一样慢。
然后,我们尝试在返回 QGraphicsScene 并再次移动点之前删除 QWebEngineView。它和以前一样慢,即使 QGraphicsScene 不再存在。
问题是,如果 QWebEngingeView 被破坏,为什么 QGraphicsScene 没有像创建 QWebEngineView 之前那样快?你知道如何让两者顺利运行吗?或者至少像创建 QWebEngineView 之前一样快地获得 QGraphicsScene ?
注意:我们在 Linux Mint、C++、Qt 5.6 上编码
python - 尝试在 Qt 中分配无父小部件时的奇怪行为
我有以下代码:
这是输出:
首先,我创建 QWebEnginePage 派生的 Q 类的新实例,将视图设置为其父级并将其分配为视图的页面。它按预期工作。
接下来我做同样的事情,但没有给父母。相反,我创建了一个临时变量来保存一个新的 Q 并分配它。它仍然按预期工作。
最后,我直接分配了一个动态创建的无父 Q。由于某种原因,这不起作用,页面重置为默认类。
为什么会这样?
python - 如何让 PyQt5 的 QWebEngineView 能够播放音频?
我想在网络上使用 PyQt5 的 QWebEngineView 播放音频。这是我的代码:
但是当我点击Play
按钮时,音频不播放。我怎么了?
javascript - 使用 QWebEngineView 与 html/javascript 通信
我需要获取一个动态内容,该内容由 ajax js 调用加载。
我真的不知道如何使用 PyQt,但我希望我能做到这一点。HTML 类似于:
我可以使用这个简单的代码用 PyQt 渲染页面:
我如何运行“onclick”并获取内容?
c++ - 不透明度不适用于 QWebEngineView 和半透明背景
也许这是一个错误。有一个必须有投影的顶级小部件。在该小部件内,我想显示一个浏览器(仅能够呈现 html)。顶级小部件的不透明度必须是可调整的。为了让阴影按预期工作(不显示黑色边框),我们需要Qt::WA_TranslucentBackground
将其设置为 true。但是,不透明度改变不起作用。为什么?但真正困扰我的是,如果你用任何其他小部件替换浏览器小部件,比如 a QTextEdit
,不透明度变化总是有效的,包括阴影。
我在 Windows 8.1 主机上使用 Qt5.8 和 msvc2015。这是一个最小的工作示例:
轮廓:
python - QWebEnginePage.print 与 QPrintPreviewDialog 导致空预览
我有一个用于QWebKit
在对话框中显示和打印自定义生成的 HTML 报告的程序,现在,我想将整个内容转换为QWebEngine
. 到目前为止一切正常,只有打印不行!
到目前为止,我曾经QWebView.print()
将整个 HTML 数据交给一个QPrintPreviewDialog
根本不是问题的。现在,据我了解,我认为我必须使用QWebEngineView.QWebEnginepage.print(printer object, callback)
来实现相同的目标。
可悲的是,到目前为止我尝试的一切都没有奏效。QPrintPreviewDialog 的预览窗格始终保持空白,打印完成后返回给回调的结果始终为 False - 尽管打印机对象始终有效,即使在回调中也是如此。
我尝试了不同的东西,它们以某种方式起作用,因此我认为 QWebEnginePage.print() 函数在某种程度上存在错误,或者 PyQt 中存在错误,但事实上,我没有,也许是我做错了什么。
成功的解决方法(我不喜欢;-)):
不要使用
QPrintPreviewDialog
,而是通过QWebEngineView.QWebEnginePage.printToPDF(filename)
:working 生成输出!生成一个临时
QTextedit
对象并通过以下方式打印它QPrintPreviewDialog
:也可以工作,但在我的情况下HTML格式错误......
有人可以告诉我,如果我在这里假设有问题,或者是否有关于如何通过QPrintPreviewDialog
using打印 HTML 的下降示例QWebEngineView
?
python - PyQt5 中的 QWebEngineView 和 QWidget
Python 3.6.1 PyQt5 (5.8.2) 操作系统:Windows 问:我想在程序中打开站点并在顶部或底部显示底部,但如果我显示 QWebEngineView,我不会从 QWidgets 中显示任何内容,并且不如果是 QWidgets,则显示 QWebEngineView。如何在 1 个窗口中显示 QWebEngineView 和 QWidget?我的代码:
c++ - Qt 5.8 和 Pdf.js 错误
我对 pdf.js 和 Qt 5.8 有问题,我尝试在此链接中执行相同的代码Using pdf.js with Qt5.8 in my application 但他不工作我不知道为什么,qt 告诉我这条消息JS:
“js:未捕获的 TypeError:无法读取未定义的属性‘PDFJS’”。
这是我在主窗口中的代码:
c++ - 如果页面是从 Qt RCC 资源系统加载的,QWebEngineView 不会从 html 页面加载相关资源
编辑:在@eyllanesc 评论之后,这是一个托管在 github 上的最小示例。该测试在 OS X 10.12 上的 Qt5.9 上运行。
基础 HTML
让我们创建一个通过相对路径加载图像的最小示例 HTML,test.html:
该文件是在一个文件夹中创建的,该文件夹还包含img.jpg(应该是一张可爱小狗的照片)
当test.html直接在浏览器中打开时,它会按预期显示图像。
qrc 和相对路径的问题
现在,如果我们将这两个资源都嵌入到 Qt 应用程序中,使用以下 .qrc 文件:
我们可以QWebEngineView
使用以下形式的一些代码打开 HTML 页面:
页面已加载,但图像未加载。
启用 Web 开发者控制台(通过运行带有参数的应用程序--remote-debugging-port=8888
)并转到 Network 选项卡,我们可以看到甚至没有尝试加载img.jpg。
用绝对路径,没问题
如果图像元素更改为<img src="qrc:///img.jpg"></img>
,则一切正常并加载图像。
问题
- 这是qrc系统的设计限制吗?
- 有没有办法解决它?(不使用该方案对绝对路径进行硬编码)
python - PyQt 5.9 中的 OpenLayers 地理定位
我已经实现了一个具有地理定位功能和按钮的网站。
该网页在 QwebEngineView(OSM 地图)中显示良好。网页已加载
所有本机 OpenLayers 按钮(放大和缩小)都可以正常工作。
我创建了一个新的自定义按钮来在 OpenLayers 地图上显示我的地理位置。
这是我用来定位我的功能:
我在此处的帮助下创建了 Button 。
整个网页看起来像这样:
在普通浏览器中它工作正常,但在我的 PyQt 应用程序中却不行。单击自定义按钮后,没有任何反应。
我做错了什么或不可能?