1、Stage

javafx.stage.Stage,在一个javafx桌面应用程序里显示一个窗口。在JavaFX Stage内部,你可以插入一个JavaFX Scence,来显示窗口里要的内容。

当JavaFX应用程序启动时,它会创建一个根Stage对象,并将其传递给JavaFX应用程序根类的start(Stage primaryStage)方法。此Stage对象表示JavaFX应用程序的主窗口。如果应用程序需要打开更多窗口,可以在应用程序生命周期的后期创建新的阶段对象。

API

Stage primaryStage = new Stage();
//显示窗口
stage.show();
//添加窗口图标
primaryStage.getIcons().add(new Image("/image/logo.png"));
//设置窗口标题
primaryStage.setTitle("title");
//设置窗口最小化
primaryStage.setIconified(true);
//设置窗口最大化
primaryStage.setMaximized(true);
//关闭窗口
primaryStage.close();
//设置宽高
primaryStage.setHeight(500);
primaryStage.setWidth(500);
//设置不可调整大小
primaryStage.setResizable(false);
//设置全屏
primaryStage.setFullScreen(true);
//设置窗口不透明度,范围0-1
primaryStage.setOpacity(0.2);
//设置窗口始终置顶(所有应用的最顶层)
primaryStage.setAlwaysOnTop(true);

窗口风格

primaryStage.initStyle(StageStyle.TRANSPARENT);
  1. DECORATED——白色背景,带有最小化/最大化/关闭等有操作系统平台装饰( 默认设置)

  2. UNDECORATED——白色背景,没有操作系统平台装饰

  3. TRANSPARENT——透明背景,没有操作系统平台装饰

  4. UTILITY——白色背景,只有关闭操作系统平台装饰

  5. UNIFIED——有操作系统平台装饰,消除装饰和内容之间的边框,内容背景和边框背景一致

窗口模态

APPLICATION_MODAL:最高优先级,当前窗口未关闭,操作其他窗口会有提示音

WINDOW_MODAL:基本不用