package javafx;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;
//Application是JavaFX程序的入口,任何JavaFX程序都要继承该类,并重写该类的start()方法。
//(继承方法快捷键Ctrl + o)
//Application可以获取主机服务,如给它一个网址它会根据默认浏览器执行
public class Main1 extends Application {
public static void main(String[] args) {
Application.launch(args); //launch(String str)方法不放入参数也可以执行
//launch(String str)方法会默认按顺序调用init()方法-start()方法-stop()方法
//launch意思为开始从事
}
@Override
public void start(Stage primaryStage) throws Exception {
Button button = new Button("进入CSDN"); //设置一个按钮
BorderPane pane = new BorderPane(button); //将按钮布局在场景中
button.setOnAction(event -> {
//对按钮设置点击事件
getHostServices().showDocument("https://www.csdn.net/?spm=1010.2135.3001.4476");
//getHostServices获取主机服务,showDocument显示文档
});
Scene scene = new Scene(pane,520,520);
primaryStage.setScene(scene);
System.out.println("start()方法");
primaryStage.setTitle("我要学好JavaFX");
primaryStage.show();
}
@Override
public void init() throws Exception {
//可以加入线程让输出与窗口同步显现
super.init();
System.out.println("init()方法");
}
@Override
public void stop() throws Exception {
//可以进行资源清理等
super.stop();
System.out.println("stop()方法");
}
}
运行结果:
运行launch()方法后顺序调用以下方法:
init()方法
start()方法
stop()方法
运行后出现的窗口:
点击窗口中的按钮就会弹出访问权限窗口(因电脑而异),同意后会进入默认浏览器访问CSDN。