簡體   English   中英

Java將多個JPanel對象添加到JFrame中

[英]Java add more than one JPanel objects into JFrame

我是一個初學者,我不知道如何在JFrame中添加更多對象。 如何在JFrame中添加多個JPanel對象? 以下是我的嘗試。

謝謝你的幫助。

public class Init extends JFrame{

    public Init(){
        super("Ball");

        Buttons t = new Buttons();

        JumpingBall b1 = new JumpingBall();
        JumpingBall b2 = new JumpingBall();

        t.addBall(b1);
        t.addBall(b2);

        add(b1);
        add(b2);


        setSize(500,500);
        setResizable(false);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setLocationRelativeTo(null);
    }

}

您可以使用add方法在JFrame添加許多JPanel對象。 如果只顯示一個,則可能需要更改布局選項或使用布局管理器(有關詳細信息,請單擊此處 )。

假設JumpingBall擴展了JPanel ,你可能想看看這里的java布局管理器: Link

JFrame的默認LayoutBorderLayout ,如果您沒有指定要添加組件的位置,則BorderLayout默認情況下將其置於中心。 BorderLayout ,您不能在同一區域中擁有更多的那個組件。 因此,在您的示例中,您最終只會在幀中使用第二個JumpingBall面板。 如果您希望在中心有多個組件,則必須創建一個JPanel並使用不同的Layout將這些組件添加到其中。 常見的三個布局是BorderLayoutFlowLayoutGridLayout請查看上面提供的鏈接,了解組件的排列方式。

你只看到一個,因為它相互重疊。 只需為您的面板組件提供setbound(x,y,x1,y1) ,您將在位置看到您的面板。

或者使用setLayout(new FlowLayout()); 這將是您的組件相應的訂購,所以你不會覆蓋彼此。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM