2

正常に動作する GUI クラスがありますが、その GUI クラスには、別のクラスから新しい GUI を開くためのボタンがあります。

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){

     GUI2 newGui = new GUI2();
     newGui.setVisible(true);
}

ただし、新しい GUI クラス (newGui) が呼び出されると、シースルー ウィンドウとして表示されるだけです。これは、両方の GUI を同時に実行できないためですか?

現在、新しい GUI をスレッドとして開こうとしていますが、これを行う方法がわかりません。

 Thread thread = new Thread();
 thread.sleep(5000);
 thread.newGui.setVisible();

public void run();

これは私の試みでしたが、当然のことながらこれはうまくいきませんでした。

何か助けはありますか?

ありがとう!

4

2 に答える 2

3
 SwingUtilities.invokeLater(new Runnable()
        {
            public void run()
            {
               GUI2 newGui = new GUI2();
               newGui.setVisible(true);
            }
        });
于 2013-04-03T11:06:21.773 に答える
0
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){
    Thread thread = new Thread(){
        public void run(){
            GUI2 newGui = new GUI2();
            newGui.setVisible(true);
        }
    };  
    thread.start();
}
于 2013-04-03T11:04:44.157 に答える