JavaFX如何显示多个Stage窗口

其实很简单,就是用多个Stage,通过其中一个Stage中的事件来激活其它Stage的show(),当然,这些Stage也可以一次性同时显示出来。


package twostagejavafxexample;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

/**
 *
 * @author 冰豆小李
 */
public class TwoStageJavaFXExample extends Application {
    
    @Override
    public void start(Stage primaryStage) {
        Button btn = new Button();
        btn.setText("去第二舞台");
        btn.setOnAction(new EventHandler<ActionEvent>() {
            
            @Override
            public void handle(ActionEvent event) {
                System.out.println("转向第二舞台");
                //primaryStage.hide();
                newStage();
            }
        });
        
        StackPane root = new StackPane();
        root.getChildren().add(btn);
        
        Scene scene = new Scene(root, 300, 250);
        
        primaryStage.setTitle("第一舞台");
        primaryStage.setScene(scene);
        primaryStage.show();
    }
    
    //显示第二个舞台
    public void newStage(){
        Stage secondaryStage=new Stage();
        Button btn1=new Button();
        StackPane root1=new StackPane();
        btn1.setText("欢迎来到第二舞台");

        btn1.setOnAction(new EventHandler<ActionEvent>(){
            @Override
            public void handle(ActionEvent event) {
                System.out.println("欢迎来到第二舞台");
            }        
        });
       
        root1.getChildren().add(btn1);
        Scene secondaryScene=new Scene(root1,500,250);
        secondaryStage.setScene(secondaryScene);
        secondaryStage.setTitle("第二舞台");
        secondaryStage.show();
 
    }

    public static void main(String[] args) {
        launch(args);
    }
    
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值