将秋千自定义表单插入另一个自定义表单

时间:2018-10-23 10:32:32

标签: java swing

我已经使用netbeans GUI构建器创建了2个自定义表单:

  • 第一个是一个JPanel,其中包含几个JPanel和组件,中间是一个空的JPanel(JPanel1)。

  • 第二个是JPanel表单,其中包含一些组件(jbutton等)。

我想做的是将第一个表单插入到JFrame中(我成功了),然后每次我单击第一个表单上的按钮时,它将第二个表单插入第一个表单的空JPanel中。我在第二部分上失败了。

我不会在此处发布完整的代码,因为它主要由netbeans生成,但这是第一种形式的按钮上的actionperformedevent和我编写的测试JFrame类:

public class TABLE_1 extends javax.swing.JPanel {

    /**
     * Creates new form TABLE
     */
    public TABLE_1() {
        initComponents();

    }
private void jButton29ActionPerformed(java.awt.event.ActionEvent evt) {

        jPanel1.setLayout(new FlowLayout()); //empty Jpanel of 1st form
        LigneProduit2 p1 = new LigneProduit2(); //p1 is the 2nd form(JPanel)
        jPanel1.add(p1);
}


public class TABLE extends JFrame{


    public static void main(String[] args) {

        JFrame j1 = new JFrame();
        TABLE_1 t1 = new TABLE_1(); // 1st form
        j1.add(t1);
        j1.pack();
        j1.setVisible(true);
}

是的,p1不在t1中出现...

1 个答案:

答案 0 :(得分:0)

您需要在jPanel1上调用validate(),这将布局面板的组件

jPanel1.validate();