Tag: javafx 2

JavaFX ScrollPane以编程方式移动视口 – 居中内容

我可以使用setVvalue(double)和setHvalue(double)方法在JavaFX ScrollPane中移动视口。 我正在努力做的是根据其位置将特定节点置于滚动窗格的内容中。 我尝试了各种localToScene()和boundsInParent()的组合。 我已阅读(很多)并看到了这个例子 如何滚动以使ScrollPane的内容中的节点可见? 哪个接近但不使对象居中只是让它们可见。 内置鼠标平移是很棒的,但我正在进行程序化平移的恶劣天气。 最终我需要能够进行缩放,所以我将实际形状放在一个组中,并将该组添加到滚动窗格内容中。 我想我应该对组进行缩放,然后我需要能够围绕组的中心进行缩放,以便我们回到操作并识别当前的中心位置。 任何可以提供的指针或示例都会非常感激。 上面链接中的代码示例是一个很好的SSCCE。 提前致谢, 安迪

JavaFX:使用自定义节点作为TreeView的折叠/展开分支开关

是否可以使用自定义Node /形状(而不是图像 )替换TreeView的展开和折叠箭头?

如何让JNLP下载正确版本的JavaFX 2?

JavaFX 2高度依赖于本机代码。 对于我的桌面应用程序,我想为每个支持的操作系统选择最匹配的JavaFX风格,以使目标系统上的安装尽可能轻松。 由于JavaFX 2附带了几个Ant任务来帮助部署,我认为这是要走的路,但我似乎已经走到了尽头。 deploy任务生成JNLP文件,其中包含调用JavaFX安装程序的资源引用: 这显然不适用于Windows以外的操作系统,甚至可能适用于32位Windows。 根据JNLP文档 ,可以使用依赖于操作系统的资源选择: … 但是,我无法弄清楚不同平台的URL。 它们是否记录在某处? 还有另一种方法来实现我的目标吗? 请注意,已经存在类似的问题 ,但它仅限于问题的32/64位部分,并且没有得到答复。

使用colorpicker编辑器的JavaFX tableview

我有一个TableView,它使用ColorPicker来(显示/编辑)单元格中的颜色。 该表在所需字段中显示ColorPicker,但编辑不起作用。 TableColumn c2 = new TableColumn(“Color”); c2.setCellValueFactory(new PropertyValueFactory(“color”)); c2.setCellFactory(new Callback<TableColumn, TableCell>() { @Override public TableCell call(final TableColumn param) { TableCell cell = new TableCell() { @Override public void updateItem(Color c, boolean empty) { if(c != null) { final ColorPicker cp = new ColorPicker(); cp.setValue(c); setGraphic(cp); cp.setOnAction(new EventHandler() { public void handle(javafx.event.ActionEvent t) { getTableView().edit(getTableRow().getIndex(), […]

有没有办法把焦点放在javafx上?

我知道你可以通过执行node.requestFocus();将焦点放在javafx中的节点上。 但有没有办法从javafx中的节点中取走焦点或防止对焦于对象?

如何获取javafx中的当前屏幕详细信息?

我有多台显示器连接到我的电脑。 从javaFX我可以获得主屏幕。 但我需要知道舞台当前屏幕的屏幕细节。 我怎么能得到它?

具有MAC OS的java.awt.Robot类中的无头环境错误

我试图使用Robot类在我的JavaFX应用程序中捕获屏幕截图, 这是我在我的应用程序中使用的代码: Rectangle screenBounds = new Rectangle(Screen.getPrimary().getBounds().getWidth(), Screen.getPrimary().getBounds().getHeight()); Robot robot = new Robot(); BufferedImage img = robot.createScreenCapture(new java.awt.Rectangle( (int) screenBounds.getX(), (int) screenBounds.getY(), (int) screenBounds.getWidth(), (int) screenBounds.getHeight())); 它在Windows操作系统中运行良好 ,但在Robot robot = new Robot(); MAC OS中显示headless environment的错误Robot robot = new Robot();

窗口/舞台失去焦点时的事件

当JavaFX阶段失去焦点时,如何运行一段代码(或更确切地说:关闭舞台)? 例如,在Dropbox或Chrome中:如果单击托盘图标,则会打开一个小窗口。 如果您现在单击屏幕上的任意位置,窗口将关闭。 这正是我想在JavaFX应用程序中创建的行为。 我已经搜索了很长时间才找到解决方案,但找不到一个…… 所以,我正在寻找类似这样的东西: stage.addEventHandler(EventType.FOCUS_LOST, new EventHandler() { /*…*/ } ); 谢谢你帮助我!

如何在JavaFX中获取舞台的关闭事件?

在JavaFX中,如果用户单击某个阶段的关闭按钮(X)(最右上角),我该如何获取该事件? 我希望我的应用程序在窗口关闭时打印调试消息。 ( System.out.println(“Application Close by click to Close Button(X)”) ) @Override public void start(Stage primaryStage) { StackPane root = new StackPane(); root.getChildren().add(btn); Scene scene = new Scene(root, 300, 250); primaryStage.setTitle(“Hello World!”); primaryStage.setScene(scene); primaryStage.show(); // Any Event Handler //{ System.out.println(“Application(primaryStage) Closed by click to Close Button(X)”); //} }

复制ObservableList java

我有一个MasterData,它是一个ObservableList和filteredData,它也是一个ObservableList。 然后,我想用它来设置filter时显示过滤后的数据 ,但也可以在必要时恢复 ,这里是MCVE: package br; import javafx.collections.FXCollections; import javafx.collections.ObservableList; public class Main{ private static ObservableList masterData = FXCollections.observableArrayList(); private static ObservableList filteredData = FXCollections.observableArrayList(); static Filter filter = new Filter(); public static void addDummy(){ masterData.add(new Foo(“a”,1)); masterData.add(new Foo(“aa”,3)); masterData.add(new Foo(“b”,2)); masterData.add(new Foo(“bb”,4)); masterData.add(new Foo(“c”,3)); } public static void printData(ObservableList list){ for(Foo f: list) System.out.println(f.getName()); […]