【发布时间】:2016-04-21 19:02:34
【问题描述】:
好的,我有一个 JTable,我在每个单元格上显示一个 JList。为此,我必须实现 TableCellRenderer 并扩展 DefaultCellEditor。这是我返回要在 GUI 中呈现的实际 JList 的地方。
我想要做的是当用户从 JList 中取消选择一个项目时,我还想从单击的列开始取消选择该表行的所有 JLists 的所有项目。
我的问题是我想不出一种方法来取消选择当前单击的表格列之后的所有项目。我只能访问这个 DefaultListModel。我想我需要访问实际的 JList 才能删除所有选定的项目。
以下是我正在使用的方法。任何想法如何做到这一点?谢谢。
public void deselectFromLocation(int row_, int column_){
DefaultTableModel dtm = (DefaultTableModel) table1.getModel();
int cols = dtm.getColumnCount();
for(int i=column_; i<cols;i++){
PCSListModel lm = (PCSListModel) dtm.getValueAt(row_, i);
//How can I access the actual JList object in order to remove all selected items?
//The PCSListMode is DefaultListModel and has no access to JList object. Thanks.
}
}
【问题讨论】: