package fx.com;

import javafx.application.Application;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.stage.Stage;

public class Main extends Application {

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

    @Override
    public void start(Stage primaryStage) throws Exception {
        primaryStage.setTitle("JavaFxDemo");
        primaryStage.getIcons().add(new Image("file:D:\\IdeaProjects\\JavaFxDemo\\Lesson3\\src\\icon\\icon.jpg"));
//        primaryStage.setIconified(true); // 设置最小化
//        primaryStage.setMaximized(true); // 设置最大化
//        primaryStage.setWidth(800);
//        primaryStage.setHeight(600);
//        primaryStage.setResizable(false); // 设置窗口不可改变大小
//        primaryStage.setMaxWidth(1000);
//        primaryStage.setMaxHeight(900);
//        primaryStage.setMinWidth(300);
//        primaryStage.setMinHeight(300);

//        primaryStage.setFullScreen(true); // 设置全屏,必须设置Scene
        primaryStage.setScene(new Scene(new Group()));

        primaryStage.show();
//        primaryStage.close(); // 关闭窗口

        System.out.println("宽度:" + primaryStage.getWidth());
        System.out.println("高度:" + primaryStage.getHeight());

        primaryStage.widthProperty().addListener(new ChangeListener<Number>() {
            @Override
            public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
                System.out.println("当前宽度:" + newValue.doubleValue());
            }
        });
        primaryStage.heightProperty().addListener(new ChangeListener<Number>() {
            @Override
            public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
                System.out.println("当前高度:" + newValue.doubleValue());
            }
        });

    }

}