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博客

相关推荐
s_fox_22 分钟前
Nginx Embedded Variables 嵌入式变量解析(4)
java·网络·nginx
Jelena1577958579228 分钟前
使用Java爬虫获取1688 item_get_company 接口的公司档案信息
java·开发语言·爬虫
数据小小爬虫31 分钟前
Jsoup解析商品详情时,如何确保数据准确性?
java·爬虫
V+zmm1013442 分钟前
自驾游拼团小程序的设计与实现(ssm论文源码调试讲解)
java·数据库·微信小程序·小程序·毕业设计
坚定信念,勇往无前1 小时前
springboot单机支持1w并发,需要做哪些优化
java·spring boot·后端
丁总学Java1 小时前
`AdminAdminDTO` 和 `userSession` 对象中的字段对应起来的表格
java
陈无左耳、2 小时前
HarmonyOS学习第2天: 解锁语言与框架的无限可能
学习·华为·harmonyos
朝九晚五ฺ2 小时前
【Linux探索学习】第三十弹——线程互斥与同步(上):深入理解线程保证安全的机制
linux·运维·学习
m0_748240252 小时前
SpringMVC详解
java
剑走偏锋o.O2 小时前
Java四大框架深度剖析:MyBatis、Spring、SpringMVC与SpringBoot
java·spring boot·spring·mybatis