问题标签 [qwebview]
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.
qt - 在 QWebView C# 中选择文本时不调用 selectionChanged
我的窗口中有一个包含文本的 QWebView。我希望将所选单词(或无关紧要的单词)写在其他地方,但信号 selectionChanged 永远不会被调用。我需要先设置一些东西吗?现在,我所拥有的只是一个等待被调用的插槽......我现在什至不做任何事情,因为从未发送过信号
谢谢!
c++ - 我可以从 ui 实现 QWebView 的方法吗?
我使用 Qt 设计器制作界面,并且其中有一个 QWebView。我想重新实现mouseDoubleClickEvent
我的 QWebView 的功能。
我可以这样做吗?我知道我必须使用ui->webview
它来访问它,我知道我可以轻松地使用信号on_webView_selectionChanged
,但是其他方法mouseDoubleClickEvent
呢?
python - QWebview 的 Dymo 标签打印机?
我正在尝试使用 Dymo 示例页面从基于 Python/Qt 的应用程序中的 QWebview 打印标签。该示例在主流浏览器中运行良好(IE、FF、Chrome 已经过测试)。但是,当在 QWebview 中加载示例页面时,我收到以下错误:
DYMO.Label.Framework.js line 1: Error: DYMO Label Framework Plugin is not installed
我不确定为什么它可以在另一个浏览器中正常工作,但在我的应用程序的 Web 视图中却不行。将这些 Dymo 示例加载到 webview 中的正确方法是什么?
这是在主要浏览器中工作的示例页面,在 QWebview 中失败(您需要一台 Dymo 打印机来打印,否则它会加载一个警告,告诉您没有找到打印机):http://labelwriter。 com/software/dls/sdk/samples/js/PreviewAndPrintLabel/PreviewAndPrintLabel.html
当我在 webview 中加载它时,我什至没有收到警报(这是有道理的,因为在第 1 行发现了上面的错误)。
html - QtWebkit 中的简单加密/解密
我正在使用 QWebView 制作浏览器,我想实现以下目标:
浏览器——->向服务器发送请求——->服务器响应加密的html——->浏览器解密html并显示。
但问题是我无法弄清楚如何在查看收到的 html 之前对其进行解密。我还没有找到任何可以覆盖的信号或虚函数。
我什至尝试更改 QNetworkAccessManager,然后尝试篡改 QNetworkReply,但 QNetworkReply 是只读的。
那么有没有人解决这个问题?
qt - 打印 QWebview 的文本,QPrintDialog 不出现
我试过这个:
我知道我不检查用户是否接受,但这不是问题......每次,我都看不到对话框,它只是打印
所以首先我不明白为什么 QPrintDialog 没有出现,其次为什么它知道我的打印机并直接打印文本
我想解决我的第一个问题将解决我的第二个问题......
谢谢!
c++ - 如何从 QWebView 中获取图片
有人知道如何从 qwebview 获取图片吗?我的情况是,没有使用图像 url 和 QNetworkRequest 的范围。我只需要从 QWebview 中“提取”图像。
flash - 是否可以在 Mac OS X 上的 64 位 Qt 构建中的 QWebView 中播放 Flash 动画?
以前在 Mac OS X 上的 64 位 Qt 版本中无法在 QWebView 中播放 Flash 动画,因为尚未发布 64 位版本的 Adobe Flash Player。看这里:
http://qt-project.org/forums/viewthread/5338
从那时起,Adobe 发布了 64 位的 Flash Player 11。但是,Flash 动画似乎仍然不起作用,我只是在加载的页面中得到“蓝色乐高积木”而不是 Flash 动画。
我正在使用浏览器演示应用程序进行 Qt 的基本构建(即配置、制作、安装)和测试。没有关于在 Flash Player 插件中找不到正确架构的控制台错误消息,并且 Browser.app 似乎可以从磁盘加载插件正常,即 GDB 输出中的“信息共享”:
我在配置 Qt 时做错了吗?有没有其他人得到这个工作?我正在使用 Qt 浏览器演示应用程序,所以我(相当)确定它正确地打开了对它的 QWebView 的插件支持。如果使用 32 位 Qt 版本,一切正常。
c++ - QWebView 中的 evaluateJavaScript 不调用 javascript 函数
我有以下问题:我在 QWebView (Google Maps) 的代码中加载了地图表单 HTML 文件。在这个 HTML 文件中,我定义了一个 javascript 函数,它应该在地图上以指定的坐标添加一个带标签的标记。这是代码:
JavaScript 函数:
C++ 函数:
我确定从我的应用程序中正确调用了 JS 函数,但是它对我的 QWebView 框架没有影响。当我在浏览器中调用此函数时,它会正确执行并在地图上的给定位置放置一个标记。问题出在哪里?我错过了什么吗?
编辑:
它突然开始工作。我意识到函数代码没有正确执行(尽管在浏览器中工作)所以我打开了 DeveloperExtras,这样我就可以在我的 QWebView 中检查 JS 的情况。我只是将这个:粘贴QWebSettings::globalSettings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);
到我的主窗口的构造函数中,然后 javascript 代码开始工作。删除这条线后,它仍然可以正常工作。我不会称其为解决方案,但是,它以某种方式对我有用。
qt - 我想处理在 QWebView 中单击的链接
所以这是我的问题:我想在QWebView
. 有信号
void QWebView::linkClicked ( const QUrl & url )
当用户单击链接时发出,因此我可以将其用于我的目的,但这取决于 linkDelegationPolicy property
默认情况下设置为不委托链接的值
但我不能改变它,因为它是一个函数,QWebPage
我有一个QWebView
并且QWebView
不继承自QWebPage
......所以我真的很困惑
请提供任何帮助!谢谢!
multithreading - QWebView setContent 在一个单独的线程中
我有一个应用程序需要用于QWebView::setContent()
将一些 HTML 内容加载到 QWebView。所有这些都发生在带有 ARMv5 处理器(想想 400 MHz)的嵌入式设备上。大多数时候,我可以在合理的时间内加载页面(最多 5 秒),但有时我的内容需要很长时间才能加载(300KB 的内容大约需要 30 秒)。
问题是setContent
调用阻塞了主线程。我需要能够在加载期间处理事件,如果用户决定不再等待,甚至可以取消加载。
我正在考虑setContent
在其他线程中运行调用,以便它不会阻塞事件处理,并且我可以在必要时取消它。但是,我得到了可怕的“必须在 GUI 线程中创建小部件”,而且我认为没有办法轻松解决这个问题。
是否可以QWebView::setContent
在单独的线程中运行?如果是这样,怎么做?如果没有,是否可以在setContent
运行时处理 GUI 事件?是否可以“取消”setContent
通话?
编辑
再澄清一点,我真正感兴趣的是如何能够停止setContent
调用和/或处理 GUI 消息,以便界面保持响应,并使用setContent
.
编辑 2
为了进一步澄清,我正在处理长的静态内容,即没有 JavaScript,只有大量静态 HTML,即使在加载更多内容时用户也希望通过这些 HTML 滚动。主要思想是即使页面未完全加载,也允许她/他向下浏览页面。