JavaFX入门(一)
JavaFX入门(一)
JavaFX 从入门入门到入土系列
JavaFX 是一个开源的下一代客户端应用平台,适用于基于Java构建的桌面、移动端和嵌入式系统。 它是许多个人和公司的共同努力的成果,目的是为开发丰富的客户端应用提供一个现代、高效、功能齐全的工具包。
需要注意,jdk11以上不带javaFX需要自己去下载https://openjfx.cn/dl/
可以使用Maven:
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>11</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-fxml</artifactId>
<version>11</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.openjfx</groupId>
<artifactId>javafx-maven-plugin</artifactId>
<version>0.0.5</version>
<configuration>
<mainClass>
top.lingkang.potato.PotatoApplication
</mainClass>
</configuration>
</plugin>
</plugins>
</build>
idea运行会报错,需要根据 https://openjfx.cn/openjfx-docs/#maven
配置依赖引入,javafx-sdk-11.0.2为长期支持到2023年,自行去官网下载。
添加的启动参数
--module-path "C:\Program Files\Java11\javafx-sdk-11.0.2\lib" --add-modules javafx.controls,javafx.fxml
启动前需要手动cmd看看jdk版本是否是11,java -version
每个main都要这样配置
demo:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.stage.Stage;
/**
* @author lingkang
* @date 2021/9/17 22:04
* @description
*/
public class JavaFxDemo extends Application {
@Override
public void start(Stage stage) throws Exception {
// 定义一个标签,类似html中的span
Label label = new Label("hello world!");
// 将标签加入场景,场景类似 HTML中的 body, 将span放到body中
// 将场景放到stage中,类似HTML 中的将 body 放到 html标签里一样
stage.setScene(new Scene(label));
// 设置舞台的宽高标题
stage.setWidth(400);
stage.setHeight(100);
stage.setTitle("师姐,你好!");
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}