for (int i = 1; i <= 100; ++i) {
ageList.add(i);
}
DefaultComboBoxModel<Integer> modelAge = new DefaultComboBoxModel<Integer>();
for (Integer i : ageList) {
modelAge.addElement(i);
}
JComboBox<Integer> ageEntries = new JComboBox<Integer>();
ageEntries.setModel(modelAge);
ageEntries.addItemListener(new ageListener());
class ageListener implements ItemListener{
public void itemStateChanged(ItemEvent event) {
if (event.getStateChange() == ItemEvent.SELECTED) {
System.out.println("Selected:" + ItemEvent.SELECTED);
}
}
}
問題:當我選擇一個年齡時,無論我選擇的年齡如何,它都打印出1。例如,如果我選擇數字7,則打印出1.如果我選擇56,則打印出1.任何想法?我很難過。打印錯誤的東西
首先這將在事件方法中正確嗎?當我這樣做時,我得到一個錯誤:JComboBox是一個原始類型。參考通用類型JComboBox應參數化 –
Maydayfluffy
2012-03-14 06:43:09
@Maydayfluffy:請參閱上面的編輯... – 2012-03-14 07:01:17
現在((JComboBox)event.getSource())加下劃線。錯誤:類型安全:未選中從對象轉換爲JComboBox中 –
Maydayfluffy
2012-03-14 07:07:56