繁体   English   中英

JavaFX:如何从Main中的Controller调用方法

[英]JavaFX: how to call a method from Controller in Main

我想从JavaFX中Main类的main方法调用Controller内部的getRow()方法。 我真的不知道如何使用JavaFX,所以我什至不知道您是否应该对Controller做这件事。

public class Controller {

    public Button button00 = new Button();

    public int getRow(){
        return GridPane.getRowIndex(button00);
    }
}

我正在用JavaFX(带有64个按钮的GridPane)制作象棋,但是我已经将象棋作为普通的Java项目制作了,所以我想以某种方式使其与JavaFX一起使用。 但是我的原始代码需要所选演奏片段的位置(从控制台输入该位置),因此我尝试获取所选按钮的位置。 但是我在主要方法中需要该职位,但我不知道该如何获得。

您可以从FXMLLoader获取Controller:

//loading scene fxml
FXMLLoader loader = new FXMLLoader(Main.class.getResource("your_path.fxml"));
Parent sceneFXML = loader.load();
//getting controller object
Controller ctrl = (Controller)(loader.getController());

现在,您可以从ctrl访问所需的属性或方法。

ctrl.getRow();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM