2012-09-25 54 views
2

我有兩個JFrames(mainFrame.java & child.java)在NetBeans編輯器中設計。我想從第一幀調用第二個JFrame作爲子窗口。我怎麼稱呼它?Java子窗口:Netbeans

+1

怎麼辦你想打電話嗎? –

+0

點擊mainFrame.java @LewsTherin中的按鈕後,我想調用child.java。 –

回答

0

使第一幀的對象然後在第二幀中調用它。

firstframe fm = new firstframe(); 
fm.setVisible(true); 
0

如果我理解正確,您希望在其中有一個帶有子窗口的主窗口。如果是這樣,請查看下面的代碼。

截屏:enter image description here

import javax.swing.JDesktopPane; 
import javax.swing.JFrame; 
import javax.swing.SwingUtilities; 
/** 
* Sample demonstrates using JInternalFrame as a child window of a main 
* JFrame window TicTacToe class extends JInternalFrame. 
* @author Kirk 
* 
*/ 
public class BoardBuilder extends JFrame { 

    private TicTacToe board; 
    JDesktopPane desktopPane = new JDesktopPane(); 

    public BoardBuilder() { 
     SwingUtilities.invokeLater(new Runnable() { 
      public void run() { 
       board = new TicTacToe("TicToc Toe", true); 
       board.setSize(250, 250); 
       board.setClosable(true); 
       board.setIconifiable(true); 
       board.setDefaultCloseOperation(TicTacToe.DISPOSE_ON_CLOSE); 
       if (!board.isVisible()) 
        board.setVisible(true); 

       desktopPane.add(board); 
       add(desktopPane); 
      } 
     }); 

    } 

    public static void main(String[] args) { 
     BoardBuilder builderBoard = new BoardBuilder(); 
     builderBoard.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 
     builderBoard.setSize(640, 480); 
     builderBoard.setVisible(true); 

    } 

    } 

調用子窗口發生在按鈕的Click事件的代碼塊監聽

SwingUtilities.invokeLater(new Runnable() { 
       public void run() { 
       board = new TicTacToe("TicToc Toe", true); 
       board.setSize(250, 250); 
       board.setClosable(true); 
       board.setIconifiable(true); 
       board.setDefaultCloseOperation(TicTacToe.DISPOSE_ON_CLOSE); 
       if (!board.isVisible()) 
        board.setVisible(true); 

       desktopPane.add(board); 
       add(desktopPane); 
      } 
     }); 

對於未來的信息請查看以下鏈接docs.oracle-InternalFrames