Tag: javafx

将侦听器添加到Java / JavaFX中的变量,该变量在变量变量时被调用

我知道JavaFX中有听众,我确信Java。 但我很困惑如何实现它们。 我有一个在我的程序中更改的布尔变量。 每次更改布尔值时,我都希望运行一个函数myFunc()。 这可以轻松完成吗?

JavaFX图表自动缩放错误,数字较小

我正在使用JavaFX来构建StackedBarChart。 随着新数据的进入,图表将会发生变化。我正在用一个更新图表的按钮模拟这个。 它主要工作正常,但我注意到,当值较低(值小于~100)时,Y轴标签在我第一次更新图表时似乎有点偏差: 更奇怪的是,如果我第二次(或第三次,第四次……)更新图表,Y轴的自动缩放就会偏离: 如果我使用更大的值(值> ~1000),则自动缩放工作正常。 如果我停用图表动画,则自动缩放工作正常。 第一次更新图表时自动缩放工作正常,但之后没有。 这是我正在使用的代码,它与此 JavaFX教程中的代码非常相似。 import java.util.Arrays; import javafx.application.Application; import javafx.collections.FXCollections; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.scene.Scene; import javafx.scene.chart.CategoryAxis; import javafx.scene.chart.NumberAxis; import javafx.scene.chart.StackedBarChart; import javafx.scene.chart.XYChart; import javafx.scene.control.Button; import javafx.scene.layout.VBox; import javafx.stage.Stage; public class StackedBarChartSample extends Application { final CategoryAxis xAxis = new CategoryAxis(); final NumberAxis yAxis = new NumberAxis(); final […]

JavaFX:使用JavaFX嵌入除可用webview之外的浏览器

我正在开发一个JavaFX应用程序,它包含很少的html,css,JS文件,这些文件由内部webkit浏览器呈现。 现在,问题是我们在JavaFX提供的webkit浏览器中没有得到平滑渲染的CSS动画,但Firefox或chrome中的相同代码相当平滑。 此外,没有持久性可用(目前在Java中使用变量,并通过JS进行持久性通信)。 我正在寻找的是有任何方法来集成一些无头浏览器,或一些设置,使CSS动画更顺畅。 我遇到的唯一问题是JxBrowser,但对于个人使用来说太昂贵了。 代码: public class Main extends Application { private Scene scene; MyBrowser myBrowser; String completeText = “”; @Override public void start(Stage primaryStage) throws Exception{ primaryStage.setTitle(“Frontend”); java.net.CookieManager manager = new java.net.CookieManager(); java.net.CookieHandler.setDefault(manager); myBrowser = new MyBrowser(); scene = new Scene(myBrowser, 1080, 1920); primaryStage.setScene(scene); primaryStage.setFullScreen(true); primaryStage.show(); // @ being the escape character scene.setOnKeyTyped(new […]

是否可以将JavaFX的WebView更改为Chrome

我们正在尝试创建一个使用html5 canvas打开url的桌面应用程序。 我们使用Java 8 JavaFX实现了它。 但是我们在渲染草图时遇到了不好的反应。 这在Chrome浏览器中运行良好。 是否可以在JavaFx应用程序中嵌入chrome浏览器?

JavaFX TableView性能问题

我正在使用javafx表视图控件来显示我的表数据。 现在数据非常庞大,当我在控件中显示完整数据时,它会崩溃。 有没有办法这样做或者我必须缓存数据,以便我可以以块的forms显示它。 我应该使用JTable吗?

JavaFX:多次使用线程

我是JavaFX的新手,我对一个线程有点问题:我可以执行两次而且找不到原因。 以下是我的代码的总结: Task task = new Task() { @Override public Void call() throws ImageLoadedException, HomographyException, IOException { try{ System.out.println(“GO !”); return null; } catch (Exception e){ e.printStackTrace(); } return null; } @Override protected void succeeded() { super.succeeded(); System.out.println(“SUCCEEDED”); } }; @FXML protected void launch(ActionEvent event){ new Thread(task).start(); } 当我第一次点击启动我的线程的按钮时,我的任务运行没有任何问题(我的控制台显示“GO!”和“SUCCEEDED”)。 但如果我第二次点击,没有任何附加信息。 难道我做错了什么 ? 我们不能多次使用一个线程吗?

选择打开JavaFX窗口的监视器

我有两台显示器。 我在第二台显示器上打开Eclipse但是当我运行JavaFX代码时,JavaFX窗口总是在第一台显示器中打开,每次我必须将它拖到第二台显示器上才能使用它。 我必须这样做,因为当它在第一个监视器上打开时,场景中没有任何组件被加载。 仅当我将其拖动到第二个监视器时才会加载它。 但是,当我断开第二台显示器时,它会正确加载。 有人可以帮帮我吗? 默认情况下,如何在第二台显示器上打开窗口? 注意:我的第一台显示器是Macbook Pro,第二台是用作外接显示器的iMac。 回应评论: 使用任何简单的javaFX代码都会在screen1上正确加载组件的问题。 例如,为方便起见,我将@Sergey提供的代码作为答案。 码: public class FXScreens extends Application { @Override public void start(Stage stage) { VBox root = new VBox(10); root.setAlignment(Pos.CENTER); Scene scene = new Scene(root, 200, 250); int index = 1; for (Screen screen : Screen.getScreens()) { Rectangle2D bounds = screen.getVisualBounds(); Button btn = […]

如何在外接显示器上打开新舞台?

我有一台外接显示器插在笔记本电脑上。 我想在全屏,未修饰和模态模式下在这个外部屏幕上显示一个新Stage 。 我知道如何在纯Java / Swing组合中实现所有这些,但我坚持使用JavaFX实现这样的function。 我知道,有一个Screen API,我可以使用它来获取屏幕列表,说: List allScreens = Screen.getScreens(); ……但我不知道从哪里可以离开这里。 更新:2014年8月3日,22:21 我找到了解决问题的方法,所以我决定分享我的方法。 到目前为止,我还没有找到更好的解决方案。 Button.setOnAction(new EventHandler() { @Override public void handle(ActionEvent ae) { List allScreens = Screen.getScreens(); if (allScreens.size() > 1) { Screen secondaryScreen = allScreens.get(1); Rectangle2D bounds = secondaryScreen.getVisualBounds(); Stage stage = new Stage(); stage.setX(bounds.getMinX()); stage.setY(bounds.getMinY()); stage.setWidth(bounds.getWidth()); stage.setHeight(bounds.getHeight()); stage.initStyle(StageStyle.UNDECORATED); stage.initModality(Modality.APPLICATION_MODAL); stage.show(); } […]

JavaFX在野外?

有没有人知道任何基于JavaFX的真实Web应用程序? 我是一名经验丰富的Java程序员,考虑在我不在日常工作的时候创建一个网站。 我在UI方面没有很多专业知识,所以我正在寻找利用我现有技能创造可以提供令人敬畏的RIA体验的最佳方式。 唯一的麻烦是,我不知道任何使用JavaFX实现的站点,因为它是如此新颖。 我想看看它有什么能力。

导入javafx.scene.control.Alert无法解析

我在Eclipse中跟随两个导入时收到错误: import javafx.scene.control.Alert; import javafx.scene.control.Alert.AlertType; 错误是:“ 导入javafx.scene.control.Alert无法解析 ”,第二个import语句也是如此。 我正在使用Eclipse版本:Luna Service Release 2(4.4.2)并安装了e(fx)clipse和最新的JDK 1.8(1.8.0_45)。 其他与javafx相关的import语句没有问题,例如 import javafx.scene.control.Label; import javafx.scene.control.ListView; import javafx.scene.input.MouseEvent;