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

news2024/11/25 23:39:05

一、介绍

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包下的组件

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中添加如下,也可以使用其他插件进行编译:

<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、效果

类上

五、其他章节

待补充

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/878118.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

浅谈医用IT隔离电源在医院特殊场所接地系统的应用

贾丽丽 安科瑞电气股份有限公司 上海嘉定 201801 【摘要】我们国家大部分医院的临床救治和确诊都是利用了医疗电气类设备和医用的医疗仪器&#xff0c;因此这些地方的接地问题应该引起我们的高度的重视。IT系统主要是利用了中性点没有直接接地的方式&#xff0c;所以可以减少电…

【【verilog 典型电路设计之加法器树乘法器】】

verilog 典型电路设计之加法器树乘法器 加法器树乘法器 加法器树乘法器的设计思想是“移位后加”&#xff0c;并且加法运算采用加法器树的形式。乘法运算的过程是&#xff0c;被乘数与乘数的每一位相乘并且乘以相应的权值&#xff0c;最后将所得的结果相加&#xff0c;便得到了…

日常BUG——微信小程序提交代码报错

&#x1f61c;作 者&#xff1a;是江迪呀✒️本文关键词&#xff1a;日常BUG、BUG、问题分析☀️每日 一言 &#xff1a;存在错误说明你在进步&#xff01; 一、问题描述 在使用微信小程序开发工具进行提交代码时&#xff0c;报出如下错误&#xff1a; Invalid a…

DDR5内存升级看光威,两款超值DDR5内存条,价格实惠性能强劲

DDR4内存条现在用的人应该占多数&#xff0c;但是时候升级DDR5了&#xff0c;都已经2023年了&#xff0c;国产内存早就崛起了&#xff0c;超值的DDR5内存条选择非常多&#xff0c;特别适合游戏玩家使用&#xff0c;像是光威前段时间推出的两款高端DDR5&#xff0c;神策DDR5 和神…

Java面向对象(内部类)(枚举)(泛型)

内部类 内部类是五大成员之一&#xff08;成员变量、方法、构造方法、代码块、内部类&#xff09;&#xff1b; 一个类定义在另一个类的内部&#xff0c;就叫做内部类&#xff1b; 当一个类的内部&#xff0c;包含一个完整的事物&#xff0c;且这个事务不必单独设计&#xf…

折线分割平面

一、题目 我们看到过很多直线分割平面的题目&#xff0c;今天的这个题目稍微有些变化&#xff0c;我们要求的是n条折线分割平面的最大数目。比如&#xff0c;一条折线可以将平面分成两部分&#xff0c;两条折线最多可以将平面分成7部分&#xff0c;具体如下所示。 Input 输入…

计算机竞赛 python 机器视觉 车牌识别 - opencv 深度学习 机器学习

1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 基于python 机器视觉 的车牌识别系统 &#x1f947;学长这里给一个题目综合评分(每项满分5分) 难度系数&#xff1a;3分工作量&#xff1a;3分创新点&#xff1a;3分 &#x1f9ff; 更多资…

Docker自动化部署安装(十)之安装SonarQube

这里选择的是&#xff1a; sonarqube:9.1.0-community (推荐使用) postgres:9.6.23 数据库(sonarqube7.9及以后便不再支持mysql&#xff0c;版本太低的话里面的一些插件会下载不成功的) 1、docker-sonarqube.yml文件 version: 3 services:sonarqube:container_name: sonar…

打造专属企业展示小程序

在当今的数字化时代&#xff0c;企业展示小程序已经成为了推广企业形象和吸引客户的重要工具。而如何打造一个专属的企业展示小程序呢&#xff1f;下面将带您一步步操作&#xff0c;通过乔拓云网来实现这一目标。 首先&#xff0c;您需要注册登录乔拓云网并进入操作后台。在乔拓…

如何修复损坏的DOC和DOCX格式Word文件?

我们日常办公中&#xff0c;经常用到Word文档。但是有时会遇到word文件损坏、无法打开的情况。这时该怎么办&#xff1f;接着往下看&#xff0c;小编在这里就给大家带来最简单的Word文件修复方法&#xff01; 很多时候DOC和DOCX Word文件会无缘无故的损坏无法打开&#xff0c;一…

String、StringBuffer、StringBuilder三者的异同?

String字符串 不可变的字符序列在 jdk1.8&#xff0c;我们底层用 char [ ] 存储在 jdk 17&#xff0c;我们底层用 byte [ ] 存储 StringBuffer字符串缓冲区类 可变的字符序列&#xff0c;线程安全的&#xff08;synchronized&#xff09;&#xff0c;效率低在 jdk1.8&#xf…

中大型纯电动旗舰轿车银河E8申报成功,定位“旗舰”,可年内交付

根据工信部的公告&#xff0c;吉利旗下的银河新能源品牌近日成功完成中大型纯电轿车银河 E8的申报。这款令人期待的电动轿车在外观和内饰方面都备受关注。在之前的报道中&#xff0c;我们得知银河 E8拥有时尚、动感的外观设计&#xff0c;线条流畅&#xff0c;给人一种科技感十…

关于vue,记录一次修饰符.stop和.once的使用,以及猜想。

内置指令 | Vue.js 在vue的api里&#xff0c;关于v-on有stop和once两个事件标签。 .stop - 调用 event.stopPropagation()。.once - 最多触发一次处理函数。 原有主要代码和页面效果 &#xff08;无stop和once&#xff09;: ...<div class"div" click"di…

编写时源码优化插件试验品

我又来倒垃圾啦 自己垃圾桶里的这个&#xff1a;egg language server on VSCode | Framist’s Little House 用蛋消灭魔鬼&#xff01;编写时源码优化插件 egg-language-server &#x1f9ea; in developing Source Code Optimization Tools at Writing-time 特性 demo | 点击跳…

Revit SDK: FindColumns 找到和墙相交的柱子

前言 本文的主要内容是基于 ReferenceIntersector 的一个应用。ReferenceIntersector 的主要作用是找到一条与给定射线相交的各个元素。 内容 ReferenceIntersector namespace Autodesk.Revit.DB {public class ReferenceIntersector : IDisposable{public ReferenceInters…

Playwright快速上手-1

前言 随着近年来对UI自动化测试的要求越来越高&#xff0c;,功能强大的测试框架也不断的涌现。本系列主讲的Playwright作为一款新兴的端到端测试框架,凭借其独特优势,正在逐渐成为测试工程师的热门选择。 本系列文章将着重通过示例讲解 Playwright python开发环境的搭建 …

【瑞芯微RK3588】【部署yolov5】学习资料总结

各类教程 1.官网&#xff1a;瑞芯微RK3588板子NPU的使用&#xff1b; 2. 【实测有用】在PC虚拟机上转换模型&#xff0c;再下载到RK3588板子上部署YOLOv5&#xff1b; 3. 在服务器上转换模型&#xff0c;再下载到RK3588板子上部署YOLOv5&#xff1b; 4. github上的各类资料…

【设计模式】2.策略模式

前言 代码例子是来大话设计模式&#xff0c;本文主要是根据个人的理解&#xff0c;对书中的内容做学习笔记。如果个人理解的有问题&#xff0c;请各位大佬指正&#x1f64f;。 基础遗忘了可以复习一下&#xff1a; 面向对象Java基础 简单了解UML类图 1、业务背景 商场收银软…

双色球彩票系统---(java实现)

双色球彩票系统&#xff1a;需求&#xff1a;投注号码由6个红色号码和1个蓝色球号码组成。红色球号码从1-33中选择&#xff0c;蓝色球号码从1-16当中选择 * 红 蓝 * 一等奖 6 1 * 二等奖 6 0 * 三等奖 5 1 * 四等奖 5 0 * 4 1 * 五等奖 4 0 * …