1、需求描述
想创建一个按钮集,点击便可跳转到所需的网页上,主要原因是页面能放的快速链接太少了,平时又不喜欢点击收藏夹打开。
初学JavaFx,对工具还不熟,在此记录下创建的第一个窗口和操作情况。
路漫漫其修远兮,吾将上下而求索。
2、学习过程
1)用idea创建javaFx项目
2)在自动生成的代码框架基础上,对HelloApplication代码进行修改,其他文件内容不变,如下
package com.example.fxtest2;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.Border;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.Pane;
import javafx.stage.Stage;
import java.io.IOException;
public class HelloApplication extends Application {
@Override
public void start(Stage stage) throws IOException {
// FXMLLoader fxmlLoader = new FXMLLoader(HelloApplication.class.getResource("hello-view.fxml"));
// Scene scene = new Scene(fxmlLoader.load(), 320, 240);
// stage.setTitle("Hello!");
// stage.setScene(scene);
// stage.show();
System.out.println("start()...");
Button button=new Button("打开网站");
BorderPane pane=new BorderPane(button);
button.setOnAction(e->{
getHostServices().showDocument("https://openjfx.cn/");
System.out.println("打开JavaFx中文官方网站");
});
Scene scene=new Scene(pane,320, 240);
stage.setTitle("快速查询网站");
stage.setScene(scene);
stage.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()...");//窗口关闭自动调用
}
public static void main(String[] args) {
launch();
}
}
3、运行结果
点击绿色三角形运行程序,弹出“快速查询网站”窗口如下,系统依次自动调用init、start函数,并在运行窗口显示栏里显示代码中写的输出语句,如下图。点击“打开网站”时,会在网页自动打开代码中写的网址。当关闭该弹出的窗口时,会自动调用stop函数,并在运行窗口显示栏里显示代码中写的输出语句。
4、参考链接
1)JavaFx网址https://openjfx.cn/openjfx-docs/#modular