【发布时间】:2015-07-30 13:12:12
【问题描述】:
我是 JavaFX 的新手,我很好奇是否可以将您自己的类的对象作为节点添加到主启动函数中的场景中?例如,我想在我的 start 函数中创建一个根节点,然后向它添加一个 Button。除了在同一个启动函数中创建按钮之外,是否可以实例化一个对象,该对象在其构造函数中创建自己的按钮,然后将其添加到根节点?这就是我的意思。我有两个正在使用的课程。主要和酒吧。这是我的主要课程:
public class Main extends Application {
@Override
public void start(Stage primaryStage) {
Group root = new Group();
Bar open = new Bar();
root.getChildren().add(open);
Scene scene = new Scene(root, 1024,768, Color.BLACK);
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
这是我的酒吧课:
public class Bar extends BorderPane {
public Bar()
{
Button btn = new Button("hey");
}
}
当我启动应用程序时,会打开一个 1024 X 768 黑框,但上面没有按钮。为什么?当我创建我的 Bar 对象(打开)时,它的默认构造函数会创建一个 Button。然后将该 Bar 对象作为子对象之一添加到我的 main 根对象中。如果我的 bar 对象现在是根对象的子对象之一,并且在场景中使用了根对象,那么当我启动应用程序时,Bar 对象的构造函数中的按钮是否应该显示?
在更大的范围内,这通常是在 Javafx 中完成的吗?将所有内容放在一个单独的类中并保持主启动函数尽可能干净或者可以在该函数中实例化各种对象吗?非常感谢。
【问题讨论】: