Tag: javafx

如何在JavaFX8中禁用combobox弹出窗口的隐藏?

有没有办法不断显示combobox弹出窗口? 问题是关于datepicker,但它是combobox的后代。 我想调用combobox的show()方法然后不断显示它直到阶段关闭。 到目前为止最好的事情是 showingProperty().addListener({ ov, old, newValue -> if (!newValue) this.show() }) 它有点工作,但它隐藏弹出窗口然后显示它,这是不方便的。

当对象是类型时,在tableview上显示图像

首先,对不起我的英语,感谢阅读.. 🙂 我有一个tableview,它显示了一个名为Produto的类的一些信息。 该表有一列显示一个名为produto的图像,但我只需要为某种类型的Produto显示此图像。 Produto类: public class Produto { private Integer id; private String nome; private Tipo type; //get set.. } 表格列: TableColumn tbcNomeProduto = new TableColumn(); tbcNomeProduto.setCellValueFactory(new PropertyValueFactory(“nome”)); tbcNomeProduto.setCellFactory(new Callback<TableColumn,TableCell>(){ @Override public TableCell call(TableColumn param) { TableCell cell = new TableCell(){ @Override public void updateItem(String item, boolean empty) { if(item != null){ HBox box= […]

JavaFX按钮不会禁用

我有一个任务可能需要几秒钟到几分钟,当我点击按钮执行任务时,它运行任务但不总是禁用按钮A并启用按钮B 这是我正在使用的代码: @FXML public void onExecute(ActionEvent event){ btnExecute.setDisable(true); btnStopExec.setDisable(false); new Thread(){ @Override public void run(){ Platform.runLater(() -> { QueryTable qt = new QueryTable(currentMysqlConn, currentDatabase); qt.setTabPane(resultsTabPane); qt.setQuery(queries); qt.executeQueries(); btnExecute.setDisable(false); btnStopExec.setDisable(true); }); } }.start(); } 如果我注释掉在Platform.runLater()按钮中禁用按钮A被禁用并且按钮B被启用,但是在Platform.runLater()运行之后。 为什么这有时会工作而不是其他人?

同时滚动2列表视图

在我的JavaFX项目中,我使用2个TextFlows来显示一些文本。 我使用了ScrollPanes vvalueProperty ,它持有TextFlows以同时滚动两个TextFlow scrolPane1.vvalueProperty().bindBidirectional(scrolPane2.vvalueProperty()); 但由于TextFlow仅支持Java 8 ,我试图用ListView替换它们。 如何同时滚动2个ListViews ? 由于ListView包含内部ScrollPane ,因此使用TextFlow的方法在此处不起作用。 我只想在同一时间滚动2个ListViews 。

初始化控制器和FXML链接控制器之间的区别?

直到最近我才知道你可以在FXML文件中设置带有fx:controller ,所以我依靠FXMLLoader’s setController来管理链接。 那么,是否有任何理由使用一个而不是像可overrideable initialize()方法有用的特殊情况?

如何从列表视图中选择多个项目 – JavaFX 8

我是使用JavaFX新手,我正在尝试将ObservableList添加到表视图中。 该列表仅包含String。 我的目标是显示已连接设备的列表,并让用户选择执行操作(1或更多),有没有更好的方法来实现这一目标? 编辑:我已经链接到ListView,现在它显示列表,如何从所选项目创建新列表?

公开绑定属性

属性应该如何暴露? 例如: class A{ private ObjectProperty objx; } class B{ private ObjectProperty objy; } 我们想将objy绑定到objx或者从B向objx添加一个监听器。 为objx做一个吸气剂objx ? 或者有没有办法制作一个包装函数来绑定并公开这个函数?

如何使用JavaFx删除图像的颜色(使背景透明)?

我有一个图像加载Image和ImageView 。 我想制作图像的背景,这是白色的,透明的,以匹配背景。

如何将mat(OpenCV)转换为图像(JavaFX)?

如何将mat(OpenCV)转换为图像(JavaFX)? 我认为这不是最好的方法: MatOfByte byteMat = new MatOfByte(); Highgui.imencode(“.bmp”, mat, byteMat); return new Image(new ByteArrayInputStream(byteMat.toArray())); PS Image – import javafx.scene.image.Image;

JavaFX从另一个应用程序启动Application standalone OR

以下场景: JavaFxMainApp JavaFXUpdaterApp 两者都是具有GUI和void main()方法的JavaFX应用程序。 Updater必须能够通过访问JavaFxMainApp.jar来启动JavaFXMainApp,只需知道主类 – >它只能! 调用main()。 JavaFxMainApp也必须能够通过启动main()来自行运行。 我无法启动多个VMS,这两个应用程序无法通信。 问题是: Application.launch()只能在每个JVM上执行一次。 标准javaFx启动应用程序的方式: Updater + MainApp public static void main(String[] args) { launch(args); } 这里不可能满足要求1)。 因为两个main()方法都调用launch()。 我找到的第二种方法是: Updater + MainApp public static void main(String[] args) { Application app2 = JavaFxMainApp.class.newInstance(); Stage anotherStage = new Stage(); app2.start(anotherStage); } 首先,我失去了通过args的可能性,但我可以忍受它,因为他们不会被使用。 这里的主要问题是,如果JVM已经运行了JavaFx线程,则此代码仅起作用,因此它要求在之前的某个时刻在JVM中调用launch()。 情况并非如此,因为两个调用都不再是launch()。 混合方法: Updater calls launch(), […]