1

私はJavaとSwingから始めているので、非常に簡単な質問がありますが、それを解決する(簡単な)方法が見つかりません...

私が言いたいのは、パネルの高さ全体を占めるリスト スクローラーがあるということです。それ以上のものはありません。これが私がすでに書いたコードです。私の目標を達成する方法を見つけるのを手伝ってくれてありがとう:

public class TestCode {

public static void main(String[] args) {

    JFrame window = new JFrame("Test");
    window.setSize(300, 300);
    window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JPanel panelUp = new JPanel();
    JPanel panelCenter = new JPanel();
    JPanel panelDown = new JPanel();

    window.add(panelUp, BorderLayout.NORTH);
    window.add(panelCenter, BorderLayout.WEST);
    window.add(panelDown, BorderLayout.SOUTH);

    panelUp.setBackground(new Color(200, 240, 200));
    panelCenter.setBackground(new Color(240, 200, 200));
    panelDown.setBackground(new Color(200, 200, 240));

    Vector v = new Vector();
    v.addElement("Element 1");
    v.addElement("Element 2");
    v.addElement("Element 3");
    v.addElement("Element 4");
    v.addElement("Element 5");
    v.addElement("Element 6");

    JList list = new JList(v);
    JScrollPane listScroller = new JScrollPane(list);

    panelCenter.add(listScroller);

    window.setVisible(true);
}

}
4

2 に答える 2

9

a のデフォルト レイアウトは aJPanelですFlowLayout。コントロールを中央に配置して JPanel を埋めるには、BorderLayout. これを試して:

panelCenter.setLayout(new BorderLayout());
panelCenter.add(listScroller, BorderLayout.CENTER);
于 2013-06-13T08:49:34.290 に答える