【无标题】

使用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点击跳转做出来。

相关推荐
fqbqrr2 小时前
2606C++,C++构的多态
开发语言·c++
biter down3 小时前
从 0 到 1 搭建 Python 接口自动化测试框架(博客系统实战)
开发语言·python
肖永威4 小时前
Python多业务并行计算框架插件化演进:从硬编码到动态注册
python·插件化·并行计算·动态注册
yz_aiks4 小时前
Linux Jar包配置Systemd自启动实战:从排查到配置全流程
linux·python·jar·自启动·systemd
threelab4 小时前
Three.js 物理模拟着色器 | 三维可视化 / AI 提示词
开发语言·前端·javascript·人工智能·3d·着色器
武器大师724 小时前
lv_binding_js 代码解读
开发语言·javascript·ecmascript
不知名的老吴4 小时前
线程的生命周期之线程“插队“
java·开发语言·python
kaikaile19955 小时前
数字全息图处理系统(C# 实现)
开发语言·c#
xsc6996755 小时前
从零搭建大模型与智能体平台 - 完整技术详解
python