在单独的类中访问JavaFX元素

时间:2018-12-01 15:04:14

标签: java text-editor

我正试图分解一些我正在从事的项目,因此,我正在努力将代码从主类中移除。下面是一个测试代码元素。我试图将JavaFx MenuBar项放在一个类中,将Events放在另一个类中,最后将mail类放在它自己的类中。我遇到的问题是,该窗口是createad,但MenuBar不可见并且无法访问。以下是我正在尝试练习的测试应用程序。理想情况下,这些元素都应该放在单独的类中。

任何人都可以看到我在做什么吗?

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.stage.Stage;

public class TheEvent extends Application {
    @Override
    public void start(Stage primaryStage) throws Exception {
        EventDrivenTest eventTest = new EventDrivenTest();
        Events events = new Events();

        Scene scene = new Scene(eventTest, 100, 100);
        primaryStage.setTitle("HandleEvent");
        primaryStage.setScene(scene);
        primaryStage.show();
    }
}

public class EventDrivenTest extends BorderPane {

    public EventDrivenTest() {
        MenuBar menuBar = new MenuBar();
        Events events = new Events();

        VBox vBox = new VBox(menuBar);

        Menu menu1 = new Menu("Menu 1");

        menu1.setOnAction(events);
        menuBar.getMenus().add(menu1);

        BorderPane pane = new BorderPane();
        pane.getChildren().add(vBox);
    }
public class Events implements EventHandler<ActionEvent> {
    @Override
    public void handle(ActionEvent event) {
        System.out.println("Hello World!");
    }
}

0 个答案:

没有答案