这是一个类项目,我们需要在 fxml 文档上设置我们的 GUI。我已经在 fxml 上设置了布局,但是我不确定如何让按钮打印出不同 java 类中的语句或调用方法。我尝试在网上搜索但并没有真正理解它。谁能告诉我如何才能让 GUI 不仅仅是一个按钮,还可以执行数学方法之类的操作?
谢谢
最佳答案
这是一个 FXML 示例:
https://github.com/SnakeDoc/superD/blob/master/src/com/vanomaly/superd/view/MainWindow.fxml
这是一个示例 Controller 类:
您会注意到,您可以在 FXML 中指定一个 Controller 。或者,就像在这个例子中:
https://github.com/SnakeDoc/superD/blob/master/src/com/vanomaly/superd/Main.java
您可以在 JavaFX 应用程序启动期间在 Java 代码中指定您的 Controller 。
哪个并不重要,但不要两者都做(你会得到一个错误)。
然后,在您的 Controller 中,您可以使用 @FXML
注释将该变量链接到您的 FXML 中具有相同 fx 的正确 GUI 控件:id
作为变量名(再次参见示例)。
然后您可以像使用任何其他 GUI 控件一样使用该变量。 :)
例子:
@FXML private Label targetLabel;
在 Controller 中定义。
在 FXML 中,有:
<Label fx:id="targetLabel" layoutX="26.0" layoutY="16.0" styleClass="contrast-label" text="Target(s) :" />
请注意 fx:id
是如何与变量名称相同的?这告诉 JavaFX 链接它们(它们是相同的)。
关于java - 如何让我的 fxml 和 java 类协同工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22975394/