[英]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
的默認Layout
是BorderLayout
,如果您沒有指定要添加組件的位置,則BorderLayout
默認情況下將其置於中心。 在BorderLayout
,您不能在同一區域中擁有更多的那個組件。 因此,在您的示例中,您最終只會在幀中使用第二個JumpingBall
面板。 如果您希望在中心有多個組件,則必須創建一個JPanel
並使用不同的Layout將這些組件添加到其中。 常見的三個布局是BorderLayout
, FlowLayout
和GridLayout
請查看上面提供的鏈接,了解組件的排列方式。
你只看到一個,因為它相互重疊。 只需為您的面板組件提供setbound(x,y,x1,y1)
,您將在位置看到您的面板。
或者使用setLayout(new FlowLayout());
這將是您的組件相應的訂購,所以你不會覆蓋彼此。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.