当前位置: 首页 > 知识库问答 >
问题:

如何从Controller类中的Main类获取Stackpane?

郎玮
2023-03-14
public class CsvCommander extends Application {    
    @Override
    public void start(Stage stage) throws Exception {        
        Parent root = FXMLLoader.load(getClass().getResource("FXMLDocument.fxml"));           
        Scene scene = new Scene(root);        
        stage.setScene(scene);
        stage.show();
    }
    
    public static void main(String[] args) {
        launch(args);
    }   
}

StackPane容器=fxmlLoader.load(getClass().getResource(“fxmlDocument.fxml”)等。

我如何在控制器传递中获得我的根节点或stackpane?

共有1个答案

冀景明
2023-03-14

在FXML文件中的根元素上放一个fx:id,然后以与其他元素相同的方式将其注入控制器:

FXML文件

<!-- imports etc -->
<StackPane xmlns="..." fx:controller="com.example.MyControllerClass" fx:id="container">
    <!-- nodes etc -->
</StackPane>

控制器:

public class MyControllerClass {

    @FXML // will be initialized by FXMLLoader
    private StackPane container ;

    public void initialize() {
        // do something with container....
    }
}
 类似资料:
  • 问题内容: 我知道该类的名称,说 “ MyClass”, 并且想检索该对象。 MyClass.class 供将来参考。有没有办法做到这一点? 我已经浏览了整个网络,但发现与之相关的大多数内容都与有关,我认为这不适合我的情况。我不想初始化一个类,而只是获取一个类对象以备将来使用。 编辑:关于此的第一个答案: 我已经检查了该方法,但我认为这也应该初始化该类。现在,我可以使用完整参数来调用它,并传递给第

  • 问题:我想知道是否可以从DocumentFilter获取JTextfield类型 我读过java文档,搜索了很多,但没有找到任何信息。 需要:我在两个JTextfields上设置了相同的DocumentFilter。当事件发生时,在DocumentFilter的“replace”方法中,我想知道哪个textfield导致了事件。 用例:我有大约15个文本字段(未来可能会增加),我希望对所有这些字段

  • 问题内容: 我正在使用一些第三方代码,这些代码在给定“ -classpath”命令行参数时不会设置java.class.path,而是仅创建一个类加载器,将命令行中指定的类路径中所有项的所有url添加到类加载器,然后将其设置为上下文类加载器。在我编写的此代码的插件类中,我获得了该类加载器的实例,并且需要以某种方式使用它来获取基础类路径,以便可以在JavaCompiler.getTask(… ),并

  • 我有一门课,比如下面的测试 有一个C1班 我给这门课打电话如下 当我调试时,我将i1设置为null。 请告知我做错了什么 注意:。我必须在xyx()中使用类Test,因为它是伪代码,并且xyx()中有很多代码

  • 问题内容: 我有两节课:和。后者声明为: 我需要的只是类中的方法(仅在其中,因为会有很多继承的类,而且我不想在所有这些类中都实现此方法),它将从静态调用返回类名。这是我在说的: 当我称它为: 但是父类中的每个声明只能访问父类变量,该变量的值为“ Action”。 有什么可行的方法吗? 问题答案: 总是返回使用该类的类的名称,因此使用静态方法并没有太大帮助。如果该方法不是静态的,则可以简单地使用ge