2013-04-18 2 views
1

JavaFX를 처음 사용했습니다. 이 간단한 메뉴를 만들었습니다.JavaFX 메뉴에서 Java 메소드를 호출하는 방법

MenuBar menuBar = new MenuBar(); 

     // File menu - new, save, exit 
     Menu menu = new Menu("File"); 
     menu.getItems().add(new MenuItem("New")); 
     menu.getItems().add(new MenuItem("Save")); 
     menu.getItems().add(new SeparatorMenuItem()); 
     menu.getItems().add(new MenuItem("Exit")); 

     menuBar.getMenus().add(menu); 

     // Options menu - Preferences 
     Menu options = new Menu("Options"); 
     options.getItems().add(new MenuItem("Preferences")); 

     menuBar.getMenus().add(options); 

     // Help menu - About 
     Menu help = new Menu("Help"); 
     help.getItems().add(new MenuItem("About")); 

     menuBar.getMenus().add(help); 

     menuBar.prefWidthProperty().bind(primaryStage.widthProperty()); 

     root.getChildren().add(menuBar); 
     primaryStage.setScene(scene); 
     primaryStage.show(); 
    } 

메뉴를 클릭하면 어떻게 Java 메소드를 호출 할 수 있습니까? 시작하기 전에 Exit을 클릭하면이 자바 메서드를 호출 할 수 있습니다. 대신 menu.getItems().add(new MenuItem("Exit")); 쓰기의

public void programExit(){ 

     System.exit(0); 

    } 

답변

6

:

MenuItem menuItem = new MenuItem("Exit"); 
menuItem.setOnAction(new EventHandler<ActionEvent>() { 
    @Override public void handle(ActionEvent e) { 
     System.exit(0); 
    } 
}); 
menu.getItems().add(menuItem); 
+0

예,이 문제를 해결합니다. 고맙습니다! –

관련 문제