如何在java swing中将arraylist显示为单独的jlabels?

问题描述 投票:-1回答:1

我有一个城市名称的arraylist,我想把它们作为自下而上的jlabels。我怎样才能做到这一点?

   ArrayList<String> cityNames = new ArrayList<>(columnCount); 

                while(resultSet.next()){
                    int i = 1;
                       while(i <= columnCount) {
                           cityNames.add(resultSet.getString(i++));
                       }            
                }

                //Loop through cityNames as seperate Jlabels
            for(String city : cityNames){
                cityLabel.setText(city);
            }
java swing arraylist
1个回答
3
投票

创建多个JLabels并将它们添加到面板

JPanel panel = [...];
ArrayList<String> cityNames = [...];

for(String city : cityNames)
    panel.add(new JLabel(city));

如果您以后需要对它们做些什么,也可以将它们添加到List

JPanel panel = [...];
ArrayList<String> cityNames = [...];
List<JLabel> cityLabels = new ArrayList<JLabel>();

for(String city : cityNames)
{
    JLabel label = new JLabel(city);
    cityLabels.add(label);
    panel.add(label);
}

如果你只想在一个JLabel (can be on multiple lines)中的所有城市名称

ArrayList<String> cityNames = [...];

String cities = "";
for(String city : cityNames)
    cities += ", " + city; //or use "<br>" for separate lines
cities = cities.substring(2); //remove the first ", "

JLabel cityLabel = new JLabel(cities); //add this to your rendering panel
© www.soinside.com 2019 - 2024. All rights reserved.