gpt4 book ai didi

java - JPanel 数组仅显示数组中的最后一个面板

转载 作者:行者123 更新时间:2023-12-01 19:10:01 26 4
gpt4 key购买 nike

我创建了一个 JPanel 数组,其中包含一个通用的 JLabel

class gui 
{

JPanel[] multpanel;
    JPanel finalPane = new JPanel();
    JLabel InputLabel = new JLabel("Input Files");
    
gui()
    {
InputLabel.setLocation(50,50);
     InputLabel.setSize(120,20);
     int total_instances=2;
     multpanel=new JPanel[total_instances];

for(int instance=0;instance<total_instances;instance++)
     {
     multpanel[instance]=new JPanel();
multpanel[instance].setLocation(10,0);
multpanel[instance].setSize(500,500);
multpanel[instance].setLayout(null);
     multpanel[instance].add(InputLabel);
}

finalPane.add(multpanel[0]);
finalPane.add(multpanel[1]);
     JFrame.setDefaultLookAndFeelDecorated(true);
     frame.getContentPane().add(finalPane);
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     frame.setSize(800,800);
     frame.setVisible(true);
    }

这是我的程序的简短版本,我创建了一组面板,并且一次只有一个面板可见我的问题是,它只显示数组中的最后一个面板,在我的情况下,显示数组的第二个面板,当我尝试显示第一个面板时,它什么也不显示

就像如果我有大小为 5 的面板阵列,则仅显示第 5 个面板,而所有其他面板显示空白

这是因为我在其中添加了一个通用标签

请帮忙

最佳答案

给定的组件只能有一个祖先。因此,当您向面板添加标签时,您实际上是将其从前一个面板中删除。如果您想要 5 个面板中的标签,则需要 5 个标签。

两个附加说明:

  • 您应该学习 Java 命名约定并遵守它们。变量以小写字母开头,类以大写字母开头。
  • 您应该学习使用布局管理器。这是布局组件的正确方法。不要将布局设置为 null。

关于java - JPanel 数组仅显示数组中的最后一个面板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8677620/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com