1:aplication的生命周期
关于生命周期 我们可以以一个例子开始
package application;
import javafx.application.Application;
import javafx.stage.Stage;
/**
* init()和stop()方法可以不用写
* */
public class Main extends Application {
@Override
public void init() throws Exception {
System.out.println("application初始化");
}
@Override
public void start(Stage primaryStage) throws Exception {
System.out.println("application开始");
primaryStage.setHeight(100);
primaryStage.setWidth(100);
primaryStage.show();
}
@Override
public void stop() throws Exception {
System.out.println("application结束");
}
public static void main(String[] args) {
launch(args);
}
}
对与上述代码 我们执行后发现会弹出一个100X100的窗口 此时控制台会输出init()和start()方法的打印,当点击窗口的"x"关闭窗口后控制台会打印stop()方法里面的打印
2:stage的基本功能
stage为窗口 就是一个应用的最外层 ,使用start方法的Stage primaryStage对象可以设置stage的宽度、高度、icon图标、窗口是否可拉伸、最大/最小拉伸等... 比较多 可以参考API(JDK1.8以上的API才行)
参考代码如下
package application;
import javafx.application.Application;
import javafx.scene.image.Image;
import javafx.stage.Stage;
/**
* init()和stop()方法可以不用写
* */
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
//设置stage的宽度 高度
primaryStage.setHeight(300);
primaryStage.setWidth(300);
//设置窗口标题
primaryStage.setTitle("stage case1");
//设置图标
primaryStage.getIcons().add(new Image("./img/icon.png"));
//设置固定高度 宽度 即高 宽不能拉伸
//默认为true可以拉伸 设置Resizable为false表示不能拉伸
primaryStage.setResizable(false);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
运行结果如下:
3:stage的其他设置
3.1:设置创库透明度
//设置窗口的透明状态 0~1之间的double值 0表示全透明 1表示不透明
primaryStage.setOpacity(0.7);
3.2:窗口一直置顶展示
//setAlwaysOnTop设置窗口置顶显示 默认为false 设置为true后 窗口会置顶展示
primaryStage.setAlwaysOnTop(true);
4:stage风格设置
stage的风格设置有5种 ,如下 其中第一种为默认的风格,除此之外最常用的就是第四和第五种风格
4.1:风格的设置
第一种:默认风格
扫描二维码关注公众号,回复:
5872466 查看本文章
//一般情况下JavaFX默认为第一种风格
primaryStage.initStyle(StageStyle.DECORATED);
第五种:没有最小化 最大化按钮 只有关闭按钮
primaryStage.initStyle(StageStyle.UTILITY);