2011-04-03 33 views
0
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得到一個項目,當您雙擊它,並設置一個JLabel用的setText和item.toString() 因此它設置的標籤對象toString()。獲取對象的實例從一個JList

這工作,但我想轉換java.lang.object到類「位置」類的一個實例,而不是隻是類型的對象。 因爲我不能讓那些在類的getName()方法等,只有toString方法 我做了什麼, 感謝

回答

2

嘗試

Location item = (Location) dlm.getElementAt(index); 

,然後你可以調用item.getName()等,

+0

比ks的幫助:) – 2011-04-04 12:38:37

1

如果您不能確定運行時類的一個對象,你可以使用的instanceof檢查:

Object obj = dlm.getElementAt(index); 
if (obj instanceof Location){ 
Location item = (Location) obj; 
} 
相關問題