Java 在运行时生成许多包含JList和JButton的JPanel

Java 在运行时生成许多包含JList和JButton的JPanel,java,swing,jpanel,Java,Swing,Jpanel,我已经开发了一个应用程序,目前为止,它可以向系统下食品订单。下订单后,订单详细信息(比萨饼、饮料等)应显示在厨师屏幕上。此屏幕将由1个JFrame组成,其中包含许多JPanel(每个JPanel包含一个JList和一个JButton)。厨师屏幕上出现的JPanel数量必须等于当前待处理的订单数量 我不知道如何通过在每次下新订单时创建一个新的Jpanel来在厨师屏幕上显示订单 有办法吗 提前谢谢你的帮助 假设当时的订单数量为num,您可以执行以下操作: frame = new JFrame

我已经开发了一个应用程序,目前为止,它可以向系统下食品订单。下订单后,订单详细信息(比萨饼、饮料等)应显示在厨师屏幕上。此屏幕将由1个JFrame组成,其中包含许多JPanel(每个JPanel包含一个JList和一个JButton)。厨师屏幕上出现的JPanel数量必须等于当前待处理的订单数量

我不知道如何通过在每次下新订单时创建一个新的Jpanel来在厨师屏幕上显示订单

有办法吗


提前谢谢你的帮助

假设当时的订单数量为
num
,您可以执行以下操作:

    frame = new JFrame();
    frame.setBackground(Color.white);
    frame.setBounds(20, 20, 800, 800);
    frame.setLayout(null);
    panels = new JPanel[num];
    for(int i = 0; i < num; i++) {
        panels[i] = new JPanel();
        panels[i].setLayout(null);
        panels[i].setBackground(Color.cyan);
        panels[i].setBounds(100*i + 10*i, 0, 100, 100); // this is just an example; you can change these numbers
        frame.add(panels[i]);
    }
    frame.setVisible(true);
frame=newjframe();
框架.立根背景(颜色.白色);
框架.立根(20,20,800,800);
frame.setLayout(空);
面板=新JPanel[num];
for(int i=0;i

然后将所有添加订单详细信息添加到
JTextField
中,并将文本字段添加到相应的面板中。希望这有帮助

是的,这是很有可能的,答案将取决于你希望它看起来如何。您可以使用
GridLayout
gridbagloayout
或者如果您想要更灵活的使用
migloayout
此屏幕将由1个JFrame组成,其中包含许多JPanel(
也许您可以使用“内部框架”。有关更多信息和工作示例,请阅读Swing教程中的部分。