如何在我的控制器文件中将对象称为 .fxml 文件中的对象?

How do I call an object an object from a .fxml file in my controller file?

我正在制作一个秒表程序,我想设置一个旋转的照片。问题是,我不知道如何调用控制器文件中的照片。它只是告诉我它找不到符号。

这是我要从我的 .fxml 文件调用的照片

 <ImageView fx:id="hand">
     <image>
        <Image url="@hand.png"/>
     </image>
  </ImageView>

这里是我在控制器文件中调用它的地方,但出现错误。

@FXML
 private void updateStopwatch(){
    elapsedTime++;
    Integer rotation = elapsedTime * 6;
    hand.setRotate(rotation);      


 }

提前感谢您的帮助。我得到的错误如下:

hand.setRotate(rotation); 
^^^^
Cannot find symbol hand

当您为要注入控制器的 fxml 对象提供正确的 属性 fx:id="hand" 后,您需要在控制器中将该 ID 声明为 属性 class.

public class MyController {
    @FXML private ImageView hand;

    private void updateStopwatch(){
        elapsedTime++;
        Integer rotation = elapsedTime * 6;
        hand.setRotate(rotation);      
    }
}

在您的 fxml 文件中,您必须通过在根元素中添加此属性来引用控制器 (MyController):

fx:controller="some.package.MyController"

您的 fxml 文件可能只引用一个控制器。