6

むしろ基本的な質問です。

基本的に、次のようなコードがあります。

public SuperPanel() {
    setLayout(new BorderLayout());
    add(panel1(), BorderLayout.NORTH);
    add(panel2(), BorderLayout.CENTER);
    add(panel3(), BorderLayout.SOUTH);
}

そして、それはすべてうまく機能します。問題は、中央に追加したい別の部分があることです。使用するだけadd(newPanel(), BorderLayout.CENTER)では、明らかに機能しません。JPanelでも、s にsを追加することはできJPanelますよね?

そこで、次の変更を行いました。

public SuperPanel() {
    setLayout(new BorderLayout());
    add(panel1(), BorderLayout.NORTH);
    add(supersweetpanel(), BorderLayout.CENTER);
    add(panel3(), BorderLayout.SOUTH);
}

であることsupersweetpanel()で:

public JPanel supersweetpanel() {
    JPanel sswp = new JPanel();
    setLayout(new BorderLayout());
    add(panel2(), BorderLayout.NORTH);
    return sswp;
}

これで上書きされますpanel1!他の何かに設定すると ( CENTERSOUTH、何がありますか)、最初の 2 つのパネルが完全に消えます。助けていただければ幸いです。

4

1 に答える 1