我目前正在尝试使用 Java,我创建了一个 JFrame,以便在执行程序时在屏幕上弹出。
我还创建了 JLabels 的 ArrayList 和 for 循环以递归地将 JLabels 添加到数组中。
到目前为止,我“认为”我已经成功了,但现在我希望能够使用此 ArrayList 将 ArrayList 的元素递归地添加到 Jframe 内的可视 JLabels 中。
这是我的整个代码(它很小)
public class Executable {
private static JFrame view;
private static JLabel image;
public static void main(String[] args) {
view = new JFrame("adding labels");
view.setBounds(0,0,300,1000);
view.setLocationRelativeTo(null);
view.setVisible(true);
ArrayList<JLabel> label = new ArrayList<JLabel>();
for(int i=0; i < 20; i++) {
image = new JLabel("Test");
image.setText("image-icon-"+i);
image.setBounds(0,0,200,200);
image.setBackground(Color.green);
image.setOpaque(true);
label.add(image);
}
JPanel p = new JPanel();
for (JLabel j:label) {
p.add(j);
}
view.add(p);
}
}
预先感谢任何可以提供帮助的人。
最佳答案
您可以编写一个循环来迭代数组列表中的每个 JLabel,并将它们添加到 JPanel(然后添加到 JFrame)。
JPanel p = new JPanel();
for(JLabel j:label){
p.add(j);
}
view.add(p);
关于java - 将 JLabels 的 ArrayList 添加到 JPanel 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35460895/