zoukankan      html  css  js  c++  java
  • JavaFX学习:认识 Stage 窗口相关

    代码示例

    public class Main extends Application {
        @Override
        public void start(Stage primaryStage) throws Exception {
            /*
                javafx.stage.Stage:是一个窗口
                    Stage继承于 javafx.stage.Window(继承于 Object)
                    在不同的平台上具有不同的效果显示
             */
    
            primaryStage.setTitle("这是标题");
            // primaryStage.getIcons().add(new Image("/icon/icon.png")); // 设置图标
            // primaryStage.setIconified(true); // 设置窗口最小化
            // primaryStage.setMaximized(true); // 设置窗口最大化
            primaryStage.setWidth(500); // 设置宽度
            primaryStage.setHeight(500); // 设置高度
            primaryStage.setMaxHeight(700); // 设置最大高度
            primaryStage.setMinHeight(300); // 设置最小高度
            primaryStage.setMaxWidth(700); // 设置最大宽度
            primaryStage.setMinWidth(300); // 设置最小宽度
            // primaryStage.setResizable(false); // 设置是否可以改变窗口大小
    
            // 监听高度的变化
            primaryStage.heightProperty().addListener(new ChangeListener<Number>() {
                @Override
                public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
                    System.out.println("newHeight = " + newValue);
                }
            });
    
            // 监听宽度的变化
            primaryStage.widthProperty().addListener(new ChangeListener<Number>() {
                @Override
                public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
                    System.out.println("new Width = " + newValue);
                }
            });
    
            // 监听窗口 x坐标 的变动
            primaryStage.xProperty().addListener(new ChangeListener<Number>() {
                @Override
                public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
                    System.out.println("x = " + newValue);
                }
            });
            // 监听窗口 y坐标 的变动
            primaryStage.yProperty().addListener(new ChangeListener<Number>() {
                @Override
                public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
                    System.out.println("y = " + newValue);
                }
            });
    
            // 设置全屏(与最大化不同)
            //primaryStage.setFullScreen(true);
            //primaryStage.setScene(new Scene(new Group()));
    
            primaryStage.show(); // 让窗口进行显示
            // primaryStage.close(); // 关闭窗口
    
            // 如果没有设定宽高,则需要在 show 方法之后再去获取宽高
    
    
            // 也可以不用参数提供的这个窗口,自己创建一个
            Stage stage = new Stage();
            stage.show();
            Thread.sleep(3000);
            stage.close();
        }
    
        public static void main(String[] args) {
            launch(args);
        }
    }
    
  • 相关阅读:
    p4841 城市规划
    p2619 [国家集训队2]Tree I [wqs二分学习]
    p3723 [AH2017/HNOI2017]礼物
    p5437 【XR-2】约定
    p5349 幂
    数据结构:结构之美
    你所不知道的传输层
    为什么选择这种技术而不选择另一种技术?
    Internet路由-主机路由表和转发表
    计算机网络----数据链路层(三)
  • 原文地址:https://www.cnblogs.com/wbyixx/p/14207680.html
Copyright © 2011-2022 走看看