【无标题】

使用ListView对用户加入的课程和用户教学的课程进行显示

先在服务端用一个集合将需要的数据从数据库里提取出来,再将这个集合通过网络传输到客户端最后使用ListView的方法将它显示出来就行了,难的是如何双击对应的ListView的行来进入对应的课程页面。

代码
复制代码
ObjectOutputStream objectOutputStream;
ObjectInputStream objectInputStream;
ArrayList<Course> arrayList;
try {
    objectInputStream = new ObjectInputStream(LogonController.socket.getInputStream());
    arrayList = (ArrayList<Course>) objectInputStream.readObject();
} catch (IOException | ClassNotFoundException e) {
    throw new RuntimeException(e);
}
ArrayList<String> stringArrayList = new ArrayList<>();

for (Course course1 : arrayList) {
    stringArrayList.add(course1.getName() + "\t\t" + course1.getTeachername());
}

ObservableList<String> strList = FXCollections.observableArrayList(stringArrayList);
LearnCourse.setItems(strList);

Initializable接口

如果在java文件中直接对对应的fxml文件中的javafx控件进行设置,会报错(控件为null)无法对javafx的控件进行设置。

fxml文件中的JavaFX控件在Java文件中绑定,在Java类的构造函数中还没有初始化,所有的控件还都是null,如果Java类实现了Initializable接口,则在构造函数之后自动调用Initializable接口的方法,此时JavaFX控件已经初始化,就可以可以进行设置了。

复制代码
public class CourseController implements Initializable {

@Override
public void initialize(URL url, ResourceBundle resourceBundle) {

}

明天要完成头像的传输,尽量的去把点击ListView的item点击跳转做出来。

相关推荐
不负岁月无痕11 分钟前
STL -- C++ 红黑树封装 Map 和 Set
java·c语言·开发语言·c++·面试
Tbisnic13 分钟前
23.大模型开发:深度学习----CNN 卷积神经网络 与 RNN 循环神经网络
人工智能·python·rnn·深度学习·cnn·ai大模型
小园子的小菜15 分钟前
Java核心基础:反射与泛型底层原理及实战用法详解
java·开发语言
十五年专注C++开发42 分钟前
C++之std::numeric_limits介绍
开发语言·c++·limits
2501_9259633843 分钟前
Hi3516 + WS73 SDIO Wi-Fi 适配笔记
java·开发语言
CoderYanger1 小时前
视频切割脚本(Python版)
linux·开发语言·windows·后端·python·程序人生·职场和发展
辞旧 lekkk1 小时前
CMake工程指南(一)
linux·运维·服务器·开发语言·qt·学习·萌新
迷途呀1 小时前
新闻头条后端:新闻缓存模块
前端·redis·python·缓存·fastapi
想会飞的蒲公英1 小时前
逻辑回归为什么叫回归,却用来做分类
人工智能·python·分类·回归·逻辑回归
小七在进步1 小时前
数据结构:用栈实现队列
开发语言·数据结构