JavaFX

本文介绍了JavaFX的基础知识,包括其作为富互联网应用程序库的角色,跨平台运行能力,以及如何构建简单的JavaFX应用程序。文章详细讲解了Application类、Stage、Scene、FlowPane和BorderPane布局,以及控件如按钮的使用,并展示了按钮点击事件的处理。通过实例展示了如何创建一个登录界面并与数据库交互。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

JavaFX基本介绍

代码介绍

整体结构

场景面板介绍

FlowPane 流式布局

 BorderPane 边框布局

 控件介绍

 按钮的点击事件


JavaFX基本介绍

JavaFX是用于构建富互联网应用程序的Java库。 使用此库编写的应用程序可以跨多个平台一致运行。 使用JavaFX开发的应用程序可以在各种设备上运行,如台式计算机,手机,电视,平板电脑等。 要使用Java编程语言开发GUI应用程序,程序员依赖于诸如高级窗口工具包(AWT)和Swings之类的库。 在JavaFX出现之后,这些Java程序开发就可以有效地利用丰富的类库来开发GUI应用程序。

代码介绍

Application 是 JavaFX 程序的入口,任何 JavaFX 应用程序程序都要继承该类并重写 start() 方法 通过 main() 执行 Application 的 launch() 方法 launch 方法会默认执行该类下的 init() 、 start() 、 stop() 方法 方法执行后的显示顺序为: init() 方法➡ start() 方法➡ stop() 方法

 当 start 方法中没写内容的时候,运行时是没有效果的,所以需要添加以下代码:

 方法中的参数 primaryStage 表示的就是当前该程序的舞台对象。 一定要记得添加 primaryStage.show() ,不然运行完成之后是没效果的,然后就会怀疑自己代码写错了

整体结构

 Stage 是一个主容器,或者说是 舞台 ,它就是我们通常所认为的窗口(有边,高和宽,还有关闭按钮)。在舞台里面,我们可以放置一 个 Scene 也就是 场景 ,我们可以把 Scene 理解为子容器,当然你可以切换别的 Scene ,而在这个 Scene 里面,我们就可以放置各种 各样的控件。

场景面板介绍

布局面板需要和场景搭配使用,如果我们需要将内容显示出来,就需要将内容放到布局对象中,同时也还需要将该布局面板与一个场 景绑定在一起,再把场景绑定到舞台中,就完成显示了。

舞台(Stage)包含 场景(Scene),场景与布局绑定,布局中可以放入多个控件

FlowPane 流式布局

FlowPane 它会在一行上排列连续的子组件,并且如果当前行填满了以后,则自动将子组件向下推到下一行。

 构建了布局之后,我们可以往里面放入对应的组件。 需要注意的是,该布局中可以放入任意多个控件,所以该布局内部使用了 List 集合来存放多个控件。

如果想要把一个控件给到该布局,简单来说就是将控件加入该子元素集合:

 当控件填充完成之后,根据之前所述,我们需要将该布局与场景 Scene 进行绑定

 同时,需要将场景与主容器进行绑定,才能完成显示

 primaryStage.setScene(scene);

 

 可以通过拉动窗口大小观察的布局的变化 完整代码如下:

 BorderPane 边框布局

该布局有顶部,底部,左,右与中心区域的五个区域,每个区域只能有一个节点

 BorderPane borderPane = new BorderPane();

该布局有5个区域可以放入控件,所以放入控件的时候需要指定应放在该布局的什么位置:

 我们放入5个按钮到对应的位置,完整代码如下:

运行后样子

 控件介绍

注意:组件都在 javafx.scene.control 包里面,切记不要导错包

Label 文本标签

Label label=new Label("用户账户");

TextField 输入框

TextField textField=new TextField("");

 PasswordField 密码框,会隐藏输入的文本

PasswordField passwordField = new PasswordField();

Button 按钮

 Button button = new Button("登入");

 对于以上这些控件:

1. 可以通过 setText(string) 设置控件的文本内容

2. 可以通过 getText() 获得控件中的文本内容

Button button = new Button();

button.setText("( •̀ ω •́ )✧");

 按钮的点击事件

通过按钮的 setOnAction 方法可以设置按钮的点击操作,该方法需要一个 EventHandler

因为此处是属于函数式接口 @FunctionalInterface ,所以建议使用 lambda 表达式来编写

 当点击该按钮就会输出,我被点击了

 

使用流式布局制作一个登录界面,并完成数据库查询

 运行,登入成功和失败样式

 

 

 优化弹出框的代码和对应图片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值