繁体   English   中英

如何从jlist中删除项目

[英]How to remove an item from a jlist

我有一个装有书籍的Jlist,但是,我想要做的是,一旦选择了一本书,我按下一个名为return book的按钮,该按钮应该从列表中删除该书。

我有一个成员类,有一个返回书方法如下

public void returnBook(Book aBook)
{
    currentLoans.remove(aBook);
    aBook.setBorrower(null);
}

在我的主应用程序中,我在返回书按钮下面有以下代码

private void theButtonActionPerformed(java.awt.event.ActionEvent evt) {                                          
  //!!!Return book
  DefaultListModel model = (DefaultListModel) BooksOnLoan.getModel(); 
  Book selectedBook;
  selectedBook = (Book)BooksOnLoan.getModel();
  model.remove(selectedBook); 
}  

如您所见,我很不确定在单击按钮后如何从列表中删除该项目。

DefaultListModel中的“remove”方法与index一起使用,因此首先需要获取要删除的元素的索引并将其提供给remove方法。 您可以使用列表中的方法:单选模式的getSelectedIndex方法(如果没有选择则获得-1),或者选择多选的getSelectedIndices。

如果在此之后您的列表保持不变,则需要在更改模型后刷新GUI。 虽然我几乎可以肯定你不需要那样做,但是为了将来要记住这个原则。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM