javafx-webengine 相关问题


Maven-shade-plugin 检测到某些类文件存在于两个或多个 JAR 中

我正在尝试使用 maven-shade-plugin,但收到警告: javafx-controls-18.0.1-win.jar,javafx-graphics-18.0.1-win.jar, javafx-media-18.0.1-win.jar、javafx-web-18.0.1-win.jar 定义 1 覆盖...


由于 Button 类的原因,无法处理来自键盘的事件。 JavaFX(已更改)

我正在使用javafx编写一个原始的java游戏。 我通过按下按钮来执行暂停功能 @FXML 私有按钮 btnPause; 暂停由字段 private boolean isPausethatchange...


如何在javafx中处理多个按钮

我的 fxml 文件上有多个按钮。通过单击任何按钮,将显示 onAction 中定义的 fxml 表单。 问题是: 我是否应该加载所有表单,例如 foreach 和何时


JavaFX 3D 让节点面向/看着相机

所以我有一个显示分子的小应用程序。在角落里,我有第二个场景,显示轴和相对于主场景的轴旋转。在每个轴的末尾我想要文本


为 TableView 列设置单元格值时出错

我是 JavaFX 的新手(仍在学习),目前正在研究 TableViews 主题。我关注了这个特定的 YouTube 视频,他在其中制作了一个有关将单元格插入到 TableView 的程序...


Eclipse 导入外部 Jar 不起作用

我正在开发一个 JavaFX 项目,其中多人开发自己的游戏并将其导出为 jar 供我在某种游戏启动器中实现。 我们都使用 Eclipse 作为编辑器,我导入...


Eclipse GEF - 无法使用 javafx 控件中的类

我正在开发一个使用 Eclipse GEF 5(更准确地说是版本 5.0.5)的应用程序。 现在我想做一些与 mvc 徽标示例非常相似的事情。我正在关注的部分...


JavaFX。单击按钮中的线程

单击 myButton 后,运行 2 个线程。首先更改按钮图像,第二个 - 循环。我希望我的程序首先更改图像并在运行循环之后。但这不行,他们一瞬间就完蛋了。 我的...


在 Javafx datepickerskin 上突出显示多天

我正在尝试创建一个小应用程序,让用户执行以下操作: 在文本字段中输入日期,格式为 dd/mm/yyyy 按按钮 显示所选日期并突出显示它加上前 5 个


修复JavaFX应用程序无法启动多次的问题

我正在使用 Kotlin 和 Furhat 构建一个对话代理。代理向用户询问问题,如果输出不是用户所说的,我会显示一个 GUI,用户可以在其中输入正确的内容...


QWebEngineView:html 文件中的 href 不起作用

我有一个 test.html 文件,例如: 我有一个 test.html 文件,例如: <!DOCTYPE html> <html> <head> </head> <body> <a style="padding-right:5px" target="_blank" href="data/">Datadir</a> </body> </html> 包含 test.html 的目录如下: test.html data\ a.txt b.txt 我使用“file:///remote/us01home19/ktc/public_html/testLocalHref/test.html”并在firefox和chrome中单击Datadir,结果如下: 和: 我写了一个pyside2代码来做同样的事情,代码如下: from PySide2 import QtCore, QtWidgets, QtWebEngineWidgets import os import sys class CustomWebEnginePage(QtWebEngineWidgets.QWebEnginePage): # Store second window. external_window = None def acceptNavigationRequest(self, url, _type, isMainFrame): print(url, _type, isMainFrame) if _type == QtWebEngineWidgets.QWebEnginePage.NavigationTypeLinkClicked: if not self.external_window: self.external_window = QtWebEngineWidgets.QWebEngineView() self.external_window.setUrl(url) self.external_window.show() return False return super().acceptNavigationRequest(url, _type, isMainFrame) class MainWindow(QtWidgets.QMainWindow): def __init__(self, *args, **kwargs): super(MainWindow, self).__init__(*args, **kwargs) self.browser = QtWebEngineWidgets.QWebEngineView() self.browser.setPage(CustomWebEnginePage(self)) # self.browser.setUrl(QtCore.QUrl("https://code.visualstudio.com")) self.browser.setUrl(QtCore.QUrl("file:///remote/us01home19/ktc/public_html/testLocalHref/test.html")) # self.browser.setUrl(QtCore.QUrl("file:///remote/tw_rnd1/ktc/prog/python/pyside2/WebEngine/data/aaa.ava.summary.html")) #self.browser.setUrl(QtCore.QUrl("file:///remote/tw_rnd1/ktc/prog/python/pyside2/WebEngine/data/aaa_ava_corners/C_1")) self.setCentralWidget(self.browser) if __name__ == '__main__': app = QtWidgets.QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec_()) 但是执行代码,我得到的结果如下: 但是点击Datadir,没有任何反应,甚至QWebEnginePage.acceptNavigationRequest也没有触发。有没有办法让 QWebEngine 的行为像 Firefox 和 Chrome 一样? 我尝试在 QWebEnginePage.acceptNavigationRequest 函数中添加打印消息来捕获点击 dataDir 信息,但似乎没有任何响应。 python版本:python-3.9.0, 操作系统版本:“CentOS Linux 7”, Qt 版本:“Qt_5.15” python 和 Qt 是自定义构建 我发现问题来自htmltarget =“_blank”在QWebEnginePage中不起作用,它可以通过在QtWebEngineWidgets中实现类函数createWindow来避免,例如: class CustomWebEnginePage(QtWebEngineWidgets.QWebEnginePage): # Store second window. external_window = None def acceptNavigationRequest(self, url, _type, isMainFrame): print(url, _type, isMainFrame) if _type == QtWebEngineWidgets.QWebEnginePage.NavigationTypeLinkClicked: if not self.external_window: self.external_window = QtWebEngineWidgets.QWebEngineView() self.external_window.setUrl(url) self.external_window.show() return False return super().acceptNavigationRequest(url, _type, isMainFrame) def createWindow(self, t): return self;enter code here


© www.soinside.com 2019 - 2024. All rights reserved.