发布网友 发布时间:2022-05-12 03:20
共2个回答
热心网友 时间:2023-11-06 08:03
你很厉害自己已经发现了问题了并且解决了问题~
简单回答: 问题主要出现在DictTableModel 类里的setData方法里
public void setData(List<Word> listb) {//因为构造方法里传入了dic就有了单词列表,getValueAt方法也是直接从dic里获取单词列表进行更新的,所有参数可以不要,也可以在传参时填个null删除的事件处理做如下的修改:
public void actionPerformed(ActionEvent arg0) {y.getWordList().remove(new Word(eWord, cWord))
面向对象一般还需要重写equals方法 . 这样删除对象的时候,方便点
说明
其实setData() 理论上这个方法,应该是传入一个新的单词链表,然后刷新的,所以之前的代码加入了删除列表,更新显示,然后添加新列表. 然后再次更新显示.
但是因为在DictTableModel构造方法里,已经传入了dic对象. 更新数据时,也是直接获取列表的 dic.getWordList() 所以setData()感觉就只剩一个更新的功能了
热心网友 时间:2023-11-06 08:03
这个好弄 真好弄