2011-04-12 51 views
1

在我的项目中,我有一个字段是国家名称。现在我在国家名称上插入文本字段。我想要已经包含所有国家名称的组合框。有没有像在java中的组合框?所需国家组合框

回答

1

如果你正在使用秋千,那么你有JComboBox。或者在html中的Webproject中,您有Select标记。

1

如果您使用的是Swing,则有JComboBox类。您可以使用它像这样:

JComboBox comboBox = new JComboBox(); 
comboBox.addItem("First item"); 
comboBox.addItem("Second item"); 
comboBox.addItemListener(new ItemListener() 
{    
    @Override 
    public void itemStateChanged(ItemEvent e) 
    { 
     if (e.getStateChange() == ItemEvent.SELECTED) 
      System.out.println("Item " + e.getItem() + " selected"); 
     else 
      System.out.println("Item " + e.getItem() + " deselected"); 
    } 
}); 
System.out.println("Selected item: " + comboBox.getSelectedItem()); 
+2

请注意,您甚至可以通过调用Locale.getAvailableLocales()来获取JVM的语言环境列表(以填充您的JComboBox) – Riduidel 2011-04-12 09:38:14

1

没有预填充的JComboBox的所有国家,但你可以很容易在网上找到的国家的名单,把他们定义为一个常量数组,和使用该数组用于填充JComboBox或您选择使用的任何内容。虽然常量数组可能是不好的做法,因为这个列表可能会随着时间的推移缓慢变化。

一个更好的办法是使用这样的代码与Java让他们:http://www.java2s.com/Code/Java/I18N/Getalistofcountrynames.htm

但是,它依赖于你在生产中使用往上最新与国家当前列表中的JDK。当您等待JDK在新的国家/地区列表发布时发布时,您的应用将使用不正确的旧列表(至少几天)。所以你可能想要从文件或数据库中读取它们。