0

デスクトップアプリケーションを開発しました。そのアプリで、スクロールバー付きのパネルを追加したいと思います。JScrollPane を使用しようとしていますが、機能していません。

JPanel paraJPanel = new JPanel();
JScrollPane SP_para_list = new JScrollPane(paraJPanel);
add(SP_para_list).setBounds(10,30,250,350); 

このようにして、スクロールバーをパネルに追加しています。ただし、境界線のある空のパネルのみが表示されます。パネルにコンポーネントが表示されていません。私はそれにいくつかのラベルを追加しましたが。それが正しいか?スクロールバーをパネルに追加する他の方法はありますか?

前もって感謝します

4

1 に答える 1

3

以下のように、スクロールバーを表示するには、パネルの PreferredSize を設定する必要があります。

レイアウトを設定しなくても、パネルにはすでにデフォルトのレイアウトが設定されています。

public static void main(String[] args)
{
    JFrame frame = new JFrame();
    JPanel panel = new JPanel()
    {
        @Override
        public Dimension getPreferredSize() {
            return new Dimension(800, 1000);
        }
    };
    panel.add(new JLabel("Test1"));
    panel.add(new JLabel("Test2"));
    frame.getContentPane().add(new JScrollPane(panel), BorderLayout.CENTER);
    frame.setSize(600, 800);
    frame.setVisible(true);
}
于 2012-03-19T05:05:22.397 に答える