2016-09-23 9 views
0

Frameに2つのJPanelsを追加しました。BorderLayoutです。これは私が欲しいものです: enter image description hereBorderLayoutにJPanelを配置する

は、これは私が持っているものです。 enter image description here

私はボタンとJPanelsを配置する方法を見つけ出すことはできません...これは私のコードです:

mainPanel=new JPanel(new BorderLayout()); 
topPanel=new JPanel(); 
bottPanel=new JPanel(new BorderLayout()); 
bottPanel.add(importButton,BorderLayout.WEST); 
bottPanel.add(convertButton,BorderLayout.EAST); 

this.add(bottPanel,BorderLayout.SOUTH); 
this.add(topPanel,BorderLayout.NORTH); 
this.setVisible(true); 
+0

'BorderLayout.NORTH'の代わりに' BorderLayout.CENTER'に 'topPanel'を追加するとどうなりますか? – khelwood

+0

何も変更はありません –

+0

あなたのコードには「mainPanel」のステートメントがあります。あなたは決してパネルに何も追加しません。あなたのコードに基づいて、フレームの左/右に2つのボタンが表示されるはずですが、トップパネルが空で表示されないので、ボタンがフレームの上部に表示されます。問題を示す適切な[SSCCE](http://sscce.org/)を投稿してください。不完全なコードに基づいて間違っていることを推測することはできません。コードがどのように呼び出されるかのコンテキストを知る必要があります。 – camickr

答えて

0

メインパネルに何かを入力する必要があります。そうでない場合は、この例ではBorderLayout.CENTERセクションを避ける必要がある要素だけが表示されます。

https://docs.oracle.com/javase/7/docs/api/java/awt/BorderLayout.html http://www.wideskills.com/java-tutorial/java-borderlayout-class-example

ちょうどそれで遊びます!

私は、背景色を使って遊んでいましたが、私が学習していたときの動作を見ました。

+0

「メインパネルに何かを記入する」とはどういう意味ですか? –

+0

BorderLayout.CENTERセクションに何もない場合は、表示されません(セクション全体は回避されます)。ボタンなどの要素を追加してみてください。 – Zokorotroko

+0

しかし、このコンポーネントだけを使用したいのですが? –

関連する問題