点击广告时,我试图将ArrayList
传递给JComboBox
。
以下是图片,我还想了解如何在“:”之后获取信息,以便我进行计算,例如1美国:1.02 - >得到以下值:1.02当选择ID 1时,然后从文本字段1中输入的用户计算值以填充结果。
这是代码:
private void cbCountryActionPerformed(java.awt.event.ActionEvent evt) {
try{
//File reader method
FileReader file = new FileReader("/Users/MacbookDev/Desktop/countryrates.txt");
BufferedReader reader = new BufferedReader(file);
String text = "";
String line = reader.readLine();
while (line != null)
{
text += line;
line = reader.readLine();
}
cbCountry.addItem(text);
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
答案 0 :(得分:2)
while (line != null)
{
text += line;
line = reader.readLine();
}
cbCountry.addItem(text);
不要创建文件中所有文本的字符串。您需要将每行文本作为单独的项添加到组合框中:
while (line != null)
{
cbCountry.addItem(line);
line = reader.readLine();
}
此外,如果要在组合框中存储多个数据,则需要为数据创建自定义对象,然后创建自定义渲染器以显示数据。有关更多信息和示例,请参阅Combo Box With Custom Renderer。