【无标题】

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

相关推荐
辞旧 lekkk9 小时前
【Redis初阶】常见数据类型
开发语言·数据库·c++·redis·学习·缓存·bootstrap
帅次10 小时前
Kotlin 与 Java 互操作:混合工程里的平台类型与 API 边界
java·开发语言·kotlin·suspend·nullable
dtq042412 小时前
C语言-结构体详解
c语言·开发语言·学习
梅雅达编程笔记12 小时前
编程启蒙|Scratch 转 Python 系列第9天:字典/哈希表积木双向对照(AI大模型参数配置表实战)
开发语言·人工智能·python·numpy·pandas
持力行12 小时前
C++与Java变量声明、定义及内存分配的核心区别
java·开发语言·c++
zhz521412 小时前
GIS项目中空间参考转换与MBTiles偏移:问题成因、解法与避坑
python·vue·gis
jinyishu_13 小时前
C++ 继承全解:从基础到高级特性
开发语言·c++
KaMeidebaby13 小时前
卡梅德生物技术快报|如何制备单克隆抗体:小众禽类靶点单抗制备实操流程:双载体抗原交叉筛选完整工艺记录
人工智能·python·深度学习·算法·机器学习
乱写代码14 小时前
Pydantic学习--BaseModel
python
fu159357456814 小时前
【边缘计算实战】P1:从零搭建边云任务卸载仿真实验台(Python 可复现)
数据库·python·边缘计算