1

NetBeans の助けを借りずに Java GUI アプリケーションのハードコーディングに取り組んでいます。GUIにボックスレイアウトを使用しています。私の質問は、オンラインのボックスレイアウトが要素を互いに積み重ねる必要があることから簡単です。ただし、textarea(x,y) トグル ボタンと別の textarea(x,y) が表示されると、最初のテキスト領域とトグル ボタンの間にギャップがあり、トグル ボタンと 2 番目のテキスト領域の間にギャップがあります。 . なぜそれらは積み重ねられていないのですか!ありがとう、

4

1 に答える 1

2

問題を実証しようとする SSCCE の例を次に示します。おそらく、何が起こっているかを示すためにそれを変更できます。

import java.awt.*;
import javax.swing.*;

public class BoxLayoutEg {
   public static void main(String[] args) {
      JTextArea area1 = new JTextArea(10, 20);
      JToggleButton toggleBtn = new JToggleButton("Foo");
      JTextArea area2 = new JTextArea(10, 20);

      JPanel toggleBtnPanel = new JPanel();
      toggleBtnPanel.setLayout(new FlowLayout(FlowLayout.CENTER, 0, 0));
      // toggleBtnPanel.setLayout(new GridLayout());
      toggleBtnPanel.add(toggleBtn);

      JPanel mainJPanel = new JPanel();
      mainJPanel.setLayout(new BoxLayout(mainJPanel, BoxLayout.PAGE_AXIS));

      mainJPanel.add(new JScrollPane(area1));
      mainJPanel.add(toggleBtnPanel);
      mainJPanel.add(new JScrollPane(area2));

      JOptionPane.showMessageDialog(null, mainJPanel);

   }
}
于 2011-09-14T02:43:35.243 に答える