本次会通过学生管理系统介绍
分为两个角色
老师
学生
在该系统中,主要完成老师管理学生的功能,主要完成以下操作
登陆页面搭建
登陆按钮设置
使用setOnAction 完成事件设置
完成数据取值操作
实现数据库证逻辑
Alert进阶
第一个参数,弹框的类型,第一次课程中有分析,主要是图标的
第二个参数,弹框的提示信息
第三个参数,一个按钮可变数组,用于弹框下方显示的按钮
我们只要做判断,就可以知道选择的按钮了,然后在执行相关的操作
注册页面搭建
使用网格布局搭建页面
完整代码
切换与新开
现在我们需要给 前往登录 按钮设置点击事件,目的是点击它能够打开注册界面,所以我们需要了解如何进行页面新开与跳转场景切换根据之前的介绍,FX的构成部分分为Stage
构建两个场景,分别放置不同的内容
给场景一放置一个按钮控件,当我们点击按钮的时候,将舞台场景切换为场景二
设置场景一为默认显示
默认视图
点击按钮后
完整代码
新开窗口进行到这里,同学们应该对于这个 Stage 和 Scene 大概明白的差不多了一个 Stage 就是一个窗口, Scene 就是该窗口中显示的内容,如果需要新开一个窗口,那就意味存在多个舞台 Stage完成功能:点击按钮新开注册页面删除注册页面的 main 方法或者是里面的 launch() 方法,因为该方法是 JavaFX 程序的入口,项目必须有且只需要
编写登录页面 前往注册 点击事件
此处会出来两个界面 ,如果需要关闭登录界面,可以调用 对应舞台的 close() 方法
完整代码
首页搭建
结构对比
搭建整体布局
顶部
需要放入多个控件,且位于一行,可以选择 FlowPane 或者 HB
底部
与顶部类似
中部
这个部位是表格控件 TableView
我们需要为表格设置列 TableColumn
将列绑定到表格控件中
我们从 Dao 层拿到学生集合之后,需要将该集合中的数据绑定到表格控件中,所以我们需要给该控件的列进行代码
其中, new PropertyValueFactory(xx) 这行代码会自动帮助我们从学生对象中取值对应的属性,我们只需要改变列的名称与对
应的属性值 xx 即可完成数据显示
数据绑定
需要注意的点: 绑定数据的方式
未指定泛型时候,必须使用 FXCollections.observableList(list) 对普通的List进行转换才能被表格所识别
指定了泛型后,可以直接使用 addAll() 方法合并集合
完整代码
强烈要求:在 TableView 后面指定遍历数据的类型,如 TableView<Student>
自定义列值处理器
此处定义在这里是为了进行拓展,可自行选择是否需要了解
自定义列
自定义列处理器