Я определил класс DirectoryListModel
, который расширяет класс AbstractListModel
из Java Api.
Внутри у меня есть список File
объектов. Я определил метод getElementAt(int index)
как:
@Override
public Object getElementAt(int index) {
return directoryElements.get(index)
}
Проблема в том, что когда я пытаюсь запустить свой JList с моим DirectoryListModel
, он показывает полные пути файлов, а не только имена файлов. Я мог бы изменить этот код на:
@Override
public Object getElementAt(int index) {
return directoryElements.get(index).getName();
}
и это творит чудеса, но проблема в том, что в событии onclick я хочу иметь объекты File, чтобы я мог проверить их (проверить, являются ли они каталогами и т. Д.).
Если я заставлю getElementAt()
вернуть строку, я теряю эту возможность, поэтому я хотел бы узнать, есть ли способ отформатировать мои объекты File до того, как JList покажет их в моем окне или, если есть, простой и элегантный способ сделать это.
Спасибо