if(evt.getClickCount() == 2){
int index = locLst.locationToIndex(evt.getPoint());
ListModel dlm = locLst.getModel();
Object item = dlm.getElementAt(index);;
locLst.ensureIndexIsVisible(index);
System.out.println("Double clicked on " + item);
//Location loct = item.getClass();
DeedCard.setVisible(true);
TitleDeedLbl.setText(item.toString());
System.out.println(item.getClass);
item.equals(loc);
System.out.println(loc);
System.out.println(ha);
}
当您双击它时,上面的代码在jList中获取一个项目,并使用setText和item.toString()设置Jlabel 所以它将对象的标签设置为String()。
这有效,但我正在尝试将java.lang.object转换为类“Location”类的实例,而不仅仅是类型对象。 因为我无法获取该类getName()等中的方法,只有toString方法 我该怎么办, 感谢
答案 0 :(得分:2)
尝试
Location item = (Location) dlm.getElementAt(index);
然后你可以拨打item.getName()
等,
答案 1 :(得分:1)
如果您不确定对象的运行时类型,可以使用instanceof:
进行检查Object obj = dlm.getElementAt(index);
if (obj instanceof Location){
Location item = (Location) obj;
}