JavaFx基础学习【一】:基本认识

目录

一、介绍

二、JavaFx应用基本结构

三、快速创建JavaFx项目体验

四、创建Maven项目体验

五、其他章节


一、介绍

JavaFX 是一个开源的下一代客户端应用平台,适用于基于Java构建的桌面、移动端和嵌入式系统。 它是许多个人和公司的共同努力的成果,目的是为开发丰富的客户端应用提供一个现代、高效、功能齐全的工具包。

二、JavaFx应用基本结构

想要开发一款JavaFx应用,首先需要大致了解一下一款JavaFx应用程序的基本组成,只有大致上了解清楚之后,在开发JavaFx应用时就会减轻我们很多压力,从而在开发JavaFx应用程序上得心应手。

以下是JavaFx应用程序的大致组成:

关于应用-Application、窗口-Stage、场景-Scene、节点-Node的学习,将会在后续其他文章展出,如果有感兴趣进一步了解的小伙伴可以前往学习(链接将会附在后面)

三、快速创建JavaFx项目体验

目前高本版的idea创建JavaFx项目要求使用JDK11,如果是版本低的idea,可以使用JDK8进行开发,如果没有安装JDK11,则可以使用idea默认提供的JDK11进行开发。

1、使用idea提供的快速创建JavaFx功能创建JavaFx项目

2、项目结构

关于JavaFx的学习,将会在其他章节介绍,感兴趣的小伙伴可以前往学习(链接将会附在后面)

3、效果

四、创建Maven项目体验

1、创建一个Maven项目

2、编写App类,注意,此处需要引用的是JavaFx包下的组件

java 复制代码
public class App extends Application{

    @Override
    public void start(Stage primaryStage) throws Exception {

        // 节点node
        Button button = new Button("test");
        BorderPane borderPane = new BorderPane(button);

        // 场景scene
        Scene scene = new Scene(borderPane, 300, 300);

        // 窗口Stage
        primaryStage.setScene(scene);
        primaryStage.setTitle("我的应用");
        primaryStage.show();
    }

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

3、在pom.xml中添加如下,也可以使用其他插件进行编译:

XML 复制代码
<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.11.0</version>
                <configuration>
                    <source>11</source>
                    <target>11</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.openjfx</groupId>
                <artifactId>javafx-maven-plugin</artifactId>
                <version>0.0.8</version>
                <executions>
                    <execution>
                        <!-- Default configuration for running with: mvn clean javafx:run -->
                        <id>default-cli</id>
                        <configuration>
                            <mainClass>com.example.demo/com.example.demo.App</mainClass>
                            <launcher>app</launcher>
                            <jlinkZipName>app</jlinkZipName>
                            <jlinkImageName>app</jlinkImageName>
                            <noManPages>true</noManPages>
                            <stripDebug>true</stripDebug>
                            <noHeaderFiles>true</noHeaderFiles>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

4、效果

类上

五、其他章节

JavaFx基础学习【二】:Stage_明天再去学习的博客-CSDN博客

JavaFx基础学习【三】:Scene_明天再去学习的博客-CSDN博客

JavaFx基础学习【四】:UI控件的通用属性_明天再去学习的博客-CSDN博客

JavaFx基础学习【五】:FXML布局文件使用_明天再去学习的博客-CSDN博客

相关推荐
2***s67210 分钟前
【Go】Go语言基础学习(Go安装配置、基础语法)
服务器·学习·golang
雨中飘荡的记忆25 分钟前
财务对账系统设计与实现
java
0***h94225 分钟前
使用 java -jar 命令启动 Spring Boot 应用时,指定特定的配置文件的几种实现方式
java·spring boot·jar
雨中飘荡的记忆28 分钟前
布式事务详解:从理论到实践(RocketMQ + Seata)
java·rocketmq
i***486140 分钟前
微服务生态组件之Spring Cloud LoadBalancer详解和源码分析
java·spring cloud·微服务
zzlyx9941 分钟前
用C#采用Avalonia+Mapsui在离线地图上插入图片画信号扩散图
java·开发语言·c#
Aevget1 小时前
MyEclipse全新发布v2025.2——AI + Java 24 +更快的调试
java·ide·人工智能·eclipse·myeclipse
韩曙亮1 小时前
【人工智能】AI 人工智能 技术 学习路径分析 ① ( Python语言 -> 微积分 / 概率论 / 线性代数 -> 机器学习 )
人工智能·python·学习·数学·机器学习·ai·微积分
辞旧 lekkk1 小时前
【c++】封装红黑树实现mymap和myset
c++·学习·算法·萌新
一 乐1 小时前
购物|明星周边商城|基于springboot的明星周边商城系统设计与实现(源码+数据库+文档)
java·数据库·spring boot·后端·spring