[java] JavaFX 네비게이션과 링크 구현하기

JavaFX를 사용하여 프로그램 내에서 네비게이션과 링크를 구현하는 방법에 대해 알아보겠습니다.

목차

  1. JavaFX 네비게이션 구현
  2. 링크 구현

JavaFX 네비게이션 구현

JavaFX에서 네비게이션을 구현하기 위해서는 주요 구성 요소인 Stage와 Scene을 이용해야 합니다. 먼저, 각각의 화면을 표현하는 클래스를 생성합니다.

public class MainScreen extends Application {
    @Override
    public void start(Stage primaryStage) throws Exception {
        // 화면 내용 표시
        // ...
    
        // Scene 생성
        Scene scene = new Scene(root, 800, 600);
        
        // Stage 설정
        primaryStage.setScene(scene);
        primaryStage.setTitle("Main Screen");
        primaryStage.show();
    }
}

public class SecondScreen extends Application {
    @Override
    public void start(Stage primaryStage) throws Exception {
        // 화면 내용 표시
        // ...
    
        // Scene 생성
        Scene scene = new Scene(root, 800, 600);
        
        // Stage 설정
        primaryStage.setScene(scene);
        primaryStage.setTitle("Second Screen");
        primaryStage.show();
    }
}

각 클래스는 Application을 상속받아 start() 메서드를 구현합니다. start() 메서드에서는 화면 내용을 표시한 후, Scene을 생성하고 Stage에 설정하여 보여줍니다.

네비게이션을 구현하려면, 위의 클래스들을 호출하는 방법이 필요합니다. 이를 위해 메뉴 또는 버튼에 이벤트 핸들러를 추가하여 다른 화면을 호출할 수 있습니다.

Button mainScreenButton = new Button("Main Screen");
mainScreenButton.setOnAction(e -> {
    MainScreen mainScreen = new MainScreen();
    try {
        mainScreen.start(primaryStage);
    } catch (Exception ex) {
        ex.printStackTrace();
    }
});

Button secondScreenButton = new Button("Second Screen");
secondScreenButton.setOnAction(e -> {
    SecondScreen secondScreen = new SecondScreen();
    try {
        secondScreen.start(primaryStage);
    } catch (Exception ex) {
        ex.printStackTrace();
    }
});

위의 코드에서 Button을 생성하고 각각에 이벤트 핸들러를 추가합니다. 이벤트 핸들러에서는 해당하는 화면 클래스의 객체를 생성하고 start() 메서드를 호출하여 화면을 보여줍니다.

링크 구현

프로그램 내에서 다른 링크로 이동하기 위해서는 Hyperlink 컨트롤을 사용할 수 있습니다. Hyperlink를 클릭하면 링크가 처리되도록 이벤트 핸들러를 추가할 수 있습니다.

Hyperlink link = new Hyperlink("Go to Main Screen");
link.setOnAction(e -> {
    MainScreen mainScreen = new MainScreen();
    try {
        mainScreen.start(primaryStage);
    } catch (Exception ex) {
        ex.printStackTrace();
    }
});

위의 코드에서 Hyperlink를 생성하고 이벤트 핸들러를 추가합니다. Hyperlink를 클릭하면 MainScreen을 보여주는 코드가 실행됩니다.

이렇게 JavaFX를 사용하여 네비게이션과 링크를 구현할 수 있습니다.

참고 자료