2012-02-24 22 views
-1

9x9のグリッドの下に2つのJButtonを配置しようとしていますが、ボタンを追加すると、グリッドがボタンに合わせて変更され、ボタンを含むすべてが長方形になります。私が欲しいものグリッドの下にボタンを配置する

は、グリッドと2つのボタングリッド自体以下を持つことです。

mainPanel.setBorder(BorderFactory.createLineBorder(Color.black、BORDER_WIDTH)); mainPanel.setLayout(新しいGridLayout(3,3));

for (int i = 0; i < subPanels.length; i++) 
    { 

     for (int j = 0; j < subPanels[i].length; j++) 
     { 
     subPanels[i][j] = new JPanel(new GridLayout(3, 3)); 
     subPanels[i][j].setBorder(
      BorderFactory.createLineBorder(Color.black, BORDER_WIDTH)); 
     mainPanel.add(subPanels[i][j]); 
      } 
    } 
    buttonPanel.add(clear); 
    buttonPanel.add(solve); 
    buttonPanel.setLayout(new GridLayout(1,1)); 
    mainPanel.add(buttonPanel); 

buttonPanelは、フォーム上のすべてのコンポーネントが親を持つ

答えて

0

.. mainPanelの下ですることになっているものです。 form1にbutton1を配置すると、button1.parentは 'form1'になります。適切な親

2

変更したいボタンの親は、最も簡単な方法はのBorderLayoutの中心にあなたのmainPanelを入れ、その後、南にbuttonPanelを置くことはおそらくです。

また、buttonPanelのGridLayoutを1行×1列に設定しています。おそらく、ボタンを追加する前にレイアウトを設定し、1行×2列に設定する必要があります。

+0

どうすればよいですか?中央と南に設定しますか? – enrm

+0

BorderLayoutのドキュメントを参照してください。 – GreyBeardedGeek

関連する問題