[英]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.