我正在制作秒表计划,我想设置一张照片进行轮换。问题是,我不知道如何调用控制器文件中的照片。它只是告诉我它找不到符号。
这是我想从我的.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
答案 0 :(得分:1)
当你给fxml对象注入你想要注入控制器的正确属性AttributeError
时,你需要将该id声明为控制器类中的属性。
fx:id="hand"
在你的fxml文件中,你必须通过在root元素中添加这个属性来引用控制器(MyController):
public class MyController {
@FXML private ImageView hand;
private void updateStopwatch(){
elapsedTime++;
Integer rotation = elapsedTime * 6;
hand.setRotate(rotation);
}
}
你的fxml文件可能只涉及一个控制器。