java中的许多框架—当我单击按钮时尝试打开一个新窗口

java中的许多框架—当我单击按钮时尝试打开一个新窗口,java,swing,frame,Java,Swing,Frame,当我点击一个按钮时,我正试图打开一个新窗口。在这个新窗口中有一个窗体。该表单包含用于在第一个窗口中创建JScrollPane的信息。我想在用户完成表单中的所有元素时创建JScrollPane。我试过用线,但这不起作用 这是我的代码: f(e.getSource() == menuAjoutern){ JScrollPane scrollpane; nomniveaux++; Frame p = new Frame(); p.set

当我点击一个按钮时,我正试图打开一个新窗口。在这个新窗口中有一个窗体。该表单包含用于在第一个窗口中创建JScrollPane的信息。我想在用户完成表单中的所有元素时创建JScrollPane。我试过用线,但这不起作用

这是我的代码:

f(e.getSource() == menuAjoutern){
        JScrollPane scrollpane;
        nomniveaux++;

        Frame p = new Frame();
        p.setContentPane(new PanelInfoCrea());
        p.setVisible(true);

        /*Thread t = new Thread(new Runnable() {

            @Override
            public void run() {
                Frame p = new Frame();
                p.setContentPane(new PanelInfoCrea());
                p.setVisible(true);

            }
        });
        t.start();


        Frame.creation = true;
        while(Frame.creation) {
            try {
                System.out.println("oui");
                Thread.sleep(1);
            } catch (InterruptedException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }
        }*/
        scrollpane = new JScrollPane(Frame.p.getListeNiveau().get(Frame.p.getListeNiveau().size()-1).dessinerPlateauCreation(this.getWidth(), this.getHeight(), hauteur));
        pane.add("niveau "+nomniveaux ,scrollpane);
    }

在这里,我尝试等待布尔值为false来创建JScrollPane。布尔值在第二个窗口关闭时更改状态。你有什么想法吗?

第二个窗口应该是模态JDialog或JOptionPane(实际上是模态对话框)。这样,当显示第二个窗口时,呼叫代码将停止,直到第二个窗口不再可见时才会恢复。

请参阅。在找到副本之前,我还发布了一个社区wiki答案。JDialog很有效,谢谢!