在Spring框架中,我可以使用配置文件来加载类的成员变量.有没有办法在javafx中使用自定义控制器或自定义对象执行此操作?
@FXML注释使得您定义的名称的JavaFX对象(fx:id)
将其引用反射注入到控制器对象中的非公共字段中,因为场景图是从fxml标记加载的.
您可以通过在控制器对象的类中定义要设置为类变量的值,然后在您的initialize()方法中以编程方式(而不是在标记中)设置适当的对象属性,从而完成与请求非常相似的操作.控制器对象.
在加载场景图完成后调用initialize()方法(如果它存在)(因此所有GUI对象都将被实例化)但在控制返回到应用程序的调用代码之前.
编辑
您只能在Controller中使用@FXML,该控制器专门在fxml文件中设置,并且仅适用于该类的字段.
这是必需的,因为这些字段将在创建该类对象期间自动初始化.
public class MyController implements Initializable{ @FXML Button startButton; void initialize(java.net.URL location, java.util.ResourceBundle resources) { startButton.addActionLisetner(...); } }
详细的教程在这里