0
我有一個editable
JComboBox
它與AutoCompleteDecorator
的SwingX
庫集成在一起。我的JComboBox
也有一個ItemListener
註冊。現在,請看下面的代碼。AutoCompleteDecorator正在中斷ItemListener
AutoCompleteDecorator.decorate(ClientNameCombo);
ClientNameCombo.addItemListener(new ClientNameComboAction());
private class ClientNameComboAction implements ItemListener
{
@Override
public void itemStateChanged(ItemEvent e)
{
String selectedClientName= ClientNameCombo.getSelectedItem().toString();
if(!selectedClientName.equals("Select Client"))
{
int idClient = Integer.parseInt(String.valueOf(client_name_id_map.get(selectedClientName)));
String sql = "r";
}
}
}
無論什麼時候,我的代碼不通過int idClient = Integer.parseInt(String.valueOf(client_name_id_map.get(selectedClientName)));
它總是結束了NumberFormatException
。令人驚訝的是,如果我刪除AutoCompleteDecorator
,那麼一切正常。
有人知道如何解決這個問題嗎?
在調用parseInt之前嘗試打印(或在調試器中觀察)'client_name_id_map.get(selectedClientName)',以查看它包含的內容。 – Eran 2014-11-24 12:27:37
你使用了一個'Map'嗎?另一個愚蠢的問題是,客戶端ID是否爲數字(如果您使用的是數值以外的'Number'對象)? –
hfontanez
2014-11-24 12:34:50
你是對的。它是'Map'。 ID是數字。 –
2014-11-24 12:36:47