2016-04-27 10 views
1

GridBagLayoutのパネルにセパレータを追加しようとしています。しかし、それは表示されません。パネル全体にセパレータを描画する方法(GridBagLayout)

私はそれらのどれもが目に見える分離を与えない

panel.add(new JSeparator()); 

panel.add(new JSeparator(SwingConstants.HORIZONTAL)); 

ようなオプションを試してみました。

答えて

3

あなたが文を見つけるHow to Use Separators上のSwingのチュートリアルからセクションを読む:

セパレータは、ほとんどのAPIを持っていないし、限り、あなたは心の中で一つのことを続けると非常に使いやすいです:ほとんどの実装では垂直セパレータの高さは0で、水平セパレータの幅は0です。これは、BorderLayoutなどのレイアウトマネージャの制御下に、希望のサイズを設定するか、セパレータを配置しない限り、セパレータが表示されないことを意味しますまたは使用可能な表示領域を埋めるために伸びるBoxLayoutです。

したがって、GridBagLayoutで使用する場合は、適切な制約を指定して、セパレータが特定の行のすべての列を埋めるようにする必要があります。制約と動作例の詳細については、How to Use GridBagLayoutのSwingチュートリアルのセクションを読んでください。このチュートリアルでは、ボタンを3つの列に塗りつぶす方法を示していますので、ボタンをセパレータで置き換えてみてください。

関連する問題