`完整性元数据检查失败。`在JavaFX WebView中,忽略SystemProp
我正在尝试打开Microsoft Auth V2的网络浏览.在浏览器中加载良好,但是在Javafx的WebView(JDK 8)中,该页面为空白.一旦打开控制台输出,我就会看到许多行,例如CSS和JS. [null:0] Cannot load stylesheet https://secure.aadcdn.microsoftonline-p.com/ests/2.1.8148.16/content/cdnbundles/converged.v2.login.min_t7iocdq0wq2qh0nv233jig2.css. Failed integrity metadata check. 我相对确定问题是CORS(我正在加载microsoftonline.com,并且资源在microsoftonline-p.com上).我已经尝试了我能想到的所有可能的解决方案,或在网上找到. 我尝试设置所有这些 engine.setJavaScriptEnabled(true)
0 2023-12-01
编程技术问答社区
如何在JavaFX 8 WebView中设置/记忆滚动条的拇指位置?
我有一个有关Javafx 8 WebView及其滚动条的问题. 我想重新加载HTML文档,并记住当前的垂直滚动栏位置.不幸的是,每当我重新加载文档时,滚动条就会移至其初始位置.我该如何强迫滚动栏记住其位置? 我试图解决此问题的尝试: 通过WebView#lookup(String id)(请参阅 1 )可以访问WebView实例的垂直和水平ScrollBar实例.这使我能够掌握当前的滚动曲值,即通过ScrollBar#getValue()来掌握拇指位置.不幸的是,通过ScrollBar#setValue(double value)设置值没有所需的效果.卷轴拇指位置保持不变. 此外,我怀疑没有呈现Javafx滚动条.相反,似乎显示了具有类似样式的Webkit滚动条.至少通过风景视图的简短场景图分析给了我这种印象. 这是Javafx错误吗?有没有办法实现所需的行为? 这是一个示例程序,演示 setValue() - 问题: import java.u
0 2023-12-01
编程技术问答社区
JavaFX 8 WebView中的WebKit版本
Javafx 8中的WebKit版本是什么? 解决方案 您可以通过查询WebView的引擎的用户代理字符串. web.getEngine().getUserAgent() 这显示了 537.44 的WebKit版本,用于 Java 8U5 . 这是Javafx实现中使用的WebKit的上游版本,然后进行任何下游修改以允许其与Javafx一起使用. 随着Java 8的新版本发布,每个版本中使用的WebKit版本都会更改,但是您应该始终能够确定通过查询用户代理字符串使用的内容. 示例代码输出(在我的计算机上) Java Version: 1.8.0_05-b13 JavaFX Version: 8.0.5-b13 OS: Windows 7, amd64 User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.44 (KHTML, l
0 2023-11-30
编程技术问答社区
Wait()和Sleep()没有像想象的那样工作
使用Javafx 8.0和JRE 1.8.0 U45在Intellij中,我创建了一个基本的像素编辑器应用程序.我有两个窗口(阶段).一个是Circle对象的32x128矩阵,另一个放置在Grid Pane中,另一个是工具寡妇.我有一个Controller.java.使用鼠标,"工具"窗口提供了绘制线路,矩形等的工具,以及用于设置,文件和播放列表的菜单.文件菜单向用户提供了开放,saveas和删除.要查看保存的像素艺术文件,用户单击打开并通过JFileChooser,打开所选文件,并使用以下方法显示每个圆圈的分配颜色: public static void openFile( String pathName) throws IOException { path = Paths.get(pathName); pixelByteArray = Files.readAllBytes(path); int cnt = 0; for (int r = 0;
0 2023-11-26
编程技术问答社区
在JavaFX中绘制独立于变换的布局边界
对于一个简单的矢量绘图应用程序,我正在寻找一个"选择框",这是节点的布局的图形表示. 示例: 感谢在这种情况下正确地表示逻辑大小可以用节点缩放,但是选择框的笔触保持恒定.意思是选择框的尺度与其相应的节点缩放,但中风保持未量表. 我可以想到实施此类选择框的两种一般策略. 作为我自定义节点的属性 选择框可能是我自定义节点的内部详细信息,其可见性绑定到选定状态的节点.在这种情况下,如果可能的话,我需要找到一种方法来忽略父母的转变. 在透明窗格上的缩放节点顶部绘制选择框 在这种情况下,在将节点的转换应用于其边界之后,我将将选择框与缩放节点的布局边界结合.这似乎在JFX(即使是" Boundsinparent")中没有发生,因为您可以在 与缩放的修改示例: package application; import javafx.application.Application; import javafx.beans.property.DoubleProperty;
2 2023-11-17
编程技术问答社区
使用EventFilters消耗事件
首先,谁能向我解释,为什么我选择哪种Alert Alert?我想这与在EventFilter中调用Alert有关,但这对我来说还不清楚. public class EventFilterConsumeErrorExample extends Application { @Override public void start( final Stage primaryStage ) { final CheckBox checkBox = new CheckBox( "Check me!" ); checkBox.setOnAction( ( event ) -> { System.out.println( "onAction: " + checkBox.isSelected() ); } ); checkBox.addEventFilter( MouseEvent.MOUSE_RELEASED, ( event ) ->
0 2023-11-12
编程技术问答社区
如何在javafx中使用画布和文本
我是Javafx的新手,我正在尝试显示一个合理的号码. 例如,对于数字5/7,我希望该程序显示以下内容: 这是我尝试使用的代码来获得结果(但除了空白的白色窗格外,什么也没有显示): import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.canvas.Canvas; import javafx.scene.canvas.GraphicsContext; import javafx.scene.layout.VBox; import javafx.scene.text.Font; import javafx.scene.text.FontWeight; import javafx.stage.Stage; public class Main extends Application { Font fo
0 2023-11-11
编程技术问答社区
JFX将图像上下缩放到父级
我试图拥有一个与父母相比的图像视图.我已经搜索了我可以在此找到的每个Stackoverflow帖子,这是我尝试的: taggedImage.setPreserveRatio(true); //taggedImage.fitWidthProperty().bind( // Bindings.min(imagePane.widthProperty(), imagePane.widthProperty())); //taggedImage.fitHeightProperty().bind( // Bindings.min(imagePane.heightProperty(), imagePane.heightProperty())); taggedImage.fitWidthProperty().bind(imagePane.widthProperty()); taggedImage.fitHeightP
0 2023-11-11
编程技术问答社区
如何在JavaFX 8警报中指定按钮的特定顺序
我需要要求用户确认采取行动.确认对话框的按钮集为"是","否"和"取消".我的代码如下: private ButtonType askYesNoCancel(String question) { Alert alert = new Alert(AlertType.CONFIRMATION); alert.setContentText(question); alert.getButtonTypes().setAll(ButtonType.YES, ButtonType.NO, ButtonType.CANCEL); return alert.showAndWait().get(); } 给我 我面临的问题是,无论我在什么顺序指定ButtonType s Alert>的顺序中,我都会获得相同的按钮顺序(否
4 2023-11-11
编程技术问答社区
如何在JavaFX 8中向TableView标题单元格添加工具提示
有人知道如何在 tableview ? 有很多地方解释了如何将工具提示添加到数据单元格中,但是我没有找到将工具提示添加到标题的方法. 使用该工具 steacicview ,我可以看到标题是tablecolumnheader对象内的标签,但是看来它不是公共对象. 有什么建议? 解决方案 TableColumn firstNameCol = new TableColumn(); Label firstNameLabel = new Label("First Name"); firstNameLabel.setTooltip(new Tooltip("This column shows the first name")); firstNameCol.setGraphic(firstNameLabel); 其他解决方案 这是对james_d的扩展答案. (我没有评论的声誉): 使标签与列的T
2 2023-11-11
编程技术问答社区
JavaFX吃掉了我的内存?
在对标题感到沮丧之前,我想清楚地说我对Javafx UI是一个新鲜的.我一直是开发人员使用Swing 9年了,目前我决定尝试Javafx.网络上的示例表明,与摇摆相比,Javafx确实可以创建美丽的Guis.也许我正在尝试以错误的方式创建和部署GUI,但可以肯定的是. Javafx Planes负载速度慢于秋千,并且会消耗更多的内存.使用Javafx重新设计了相同的GUI,而秋千GUI仅需50MB. . 在这里,我举例说明了如何使用FXML编程创建GUI的代码. public class PanelCreator { private FXMLPane loginFXML; private FXMLPane registerFXML; private FXMLPane em
4 2023-11-11
编程技术问答社区
如何在JavaFX中用CSS制作动画?
我想通过更改其样式类来更改Node的样式. Button button = new Button(); button.getStyleClass().add("class1") button.setOnMouseClicked(new EventHandler() { @Override public void handle(MouseEvent mouseEvent) { button.getStyleClass().add("class2"); } }); 可以逐渐更改样式,以进行过渡之类的东西? 解决方案 是否可以逐渐更改样式,例如进行一些过渡? 是. 您需要使用setStyle而不是样式类,因为类将是CSS中定义的静态事物. Javafx CSS中没有直接支持用于动画.您需要在Java代码中执行动画步骤以修改CSS样式. 当您想使用
2 2023-11-10
编程技术问答社区
如何测试JavaFX控制器的方法?
我试图使用TestFX测试我的应用程序.我想对控制器的方法进行测试. main.java: public class Main extends Application { try{ new Flow(ManageCtrl.class).startInStage(primaryStage); } catch (Exception ex) { LOGGER.log(Level.SEVERE, null, ex); } } Managectrl.Java: @ViewController("/FPManage.fxml") public class ManageCtrl extends AnchorPane { @FXML // fx:id="email" private TextField email; // Value injected by FXMLLoader public voi
0 2023-11-07
编程技术问答社区
在单元测试中等待 Platform.RunLater
我有一个存储xychart.Series对象并通过观察模型对其进行更新的演示类别.系列更新是通过使用platform.runlater(...) 完成的. 我想对此进行单位测试,确保正确执行Runlater中的命令.如何告诉单位测试等待运行台命令完成? 现在,我所做的就是thread.sleep(...)在测试线程上,以给FXApplicationThread完成时间完成,但这听起来很愚蠢. 解决方案 我解决的方式如下. 1)创建一个简单的信号函数: public static void waitForRunLater() throws InterruptedException { Semaphore semaphore = new Semaphore(0); Platform.runLater(() -> semaphore.release()); semaphore.acquire(); } 2)每当您需要等待时致电waitFor
4 2023-11-07
编程技术问答社区
使用JavaFx和TestFx进行无头测试
我有一个简单的Javafx应用程序(Java 8),该应用程序使用TestFX具有单位测试.但是,运行测试后,应用程序窗口启动,鼠标移动以执行我测试中的任何操作.这些测试是否可以以应用程序不弹出的方式进行,并且在运行自动化的构建和测试时,我仍然可以将鼠标用于其他事物? 解决方案 更新: 我找到了为我提供解决方案的博客文章问题.正如作者所建议的那样,您需要将以下依赖性添加到您的构建中: testRuntime 'org.testfx:openjfx-monocle:1.8.0_20' 然后,在我使用@BeforeClass的方法中,您需要在registerPrimaryStage()的情况下将以下内容包含在某个地方,因为我正在使用Junit: System.setProperty("testfx.robot", "glass"); System.setProperty("testfx.headless", "true"); System.setProperty
0 2023-11-07
编程技术问答社区
JavaFX--用自定义文本字段tablecell删除表视图中的行
我正在实现一个自定义可编辑的文本单元格,以获取TableView中的选项卡功能.一切都很好,但是当我删除一行时,已删除行下方的可编辑单元格都同时更改值.因此,在已删除行下方的单元格中打字将更改该列中多个单元格的项目. incase i减小了窗口大小,因此一次只能看到3行并按下删除按钮,然后在当前视图外的可编辑单元格的值获取上述行为. 以下是我的代码. 主: import javafx.application.Application; import javafx.fxml.FXMLLoader; import javafx.scene.Parent; import javafx.scene.Scene; import javafx.stage.Stage; public class Main extends Application { @Override public void start(Stage primaryStage) throws Exception
4 2023-11-04
编程技术问答社区
JavaFX Ubuntu阶段的Dock图标不更新
我正在开发一个Javafx 8应用程序,该应用程序通过Jwrapper在Windows/osx/ubuntu上运行跨平台.现在,我正在使用stage.geticons().添加(..)将舞台图标设置为与应用程序捆绑在一起的256x256 PNG.这在Windows上起作用,但是在Ubuntu上,Dock图标仍然是Oracle/Java默认图标,如下所示.是否有一些第三方库,或者我可以使用一些技术来获取自己的图标和工具提示/标题以显示Ubuntu Dock图标? 解决方案 ubuntu有点不同:您需要在.desktop文件中设置图标.就我从基于蚂蚁的构建脚本使用JDKS JAVAPACKAGER工具中回想起的,它可以为您做到这一点,但是这也将整个JRE捆绑在一起,您将需要为每个机器访问(虚拟)机器目标平台和体系结构(不幸的是,没有像Eclipse这样的三角洲包). 基本上是在导出应用程序时,您应该构建一个预定义的.desktop文件,该文件可以指定exec命令和通往图标的路径
4 2023-11-02
编程技术问答社区
Ubuntu, JavaFX, Java运行环境检测到一个致命的错误
我已经安装了Ubuntu 14.04.02 x64,Oracle JDK 1.8.4,然后尝试运行Javafx8项目,但我在Eclipse中收到此消息(但不是每次): # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x00007f69a19a4f78, pid=7035, tid=140090187572992 # # JRE version: Java(TM) SE Runtime Environment (8.0_40-b25) (build 1.8.0_40-b25) # Java VM: Java HotSpot(TM) 64-Bit Server VM (25.40-b25 mixed mode linux-amd64 compressed oops) # Problematic frame: # V [libjvm.so+0x6
0 2023-11-02
编程技术问答社区
JavaFX应用程序的图标设置在Windows中可见,但在Ubuntu中不可见
这有点怪异,或者我的代码有问题. 我正在设置Javafx应用程序图标,该图标在Windows系统上非常可见,但在Ubuntu上却不可见. 在Windows上: 在ubuntu上: 对此背后原因的任何想法. 代码样本: @Override public void start(Stage stage) throws Exception { try { setUserAgentStylesheet(STYLESHEET_MODENA); FXMLLoader loader = new FXMLLoader(); Parent root = (Parent) loader.load(getClass().getResourceAsStream("ui/ParentWindow.fxml")); final ParentWindowController controller = (Pare
0 2023-11-01
编程技术问答社区