0

問題が発生しましたJScrollpane。リストからラベルを追加しています。追加が機能しており、ラベルが表示されます。scrollpane追加されたラベルの量は私にはわからないので、通常の境界線で十分であるように見えます. これが Scrollpane を使用する利点であり、必要に応じて実際に下にスクロールできます。しかし、スクロールバーは表示されません。そのような質問がたくさんあることは知っていますが、提案されたほとんどすべての提案を試しました。setPreferredSize()setLayout()、を試しscrollPaneApps.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS)ましたが、何も機能しませんでした。

public DisplayProperties() {

   setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
   setBounds(100, 100, 450, 300);
   contentPane = new JPanel();
   setContentPane(contentPane);
   contentPane.setLayout(null);
   contentPane.setPreferredSize(new Dimension(450,300));

   JScrollPane scrollPane1 = new JScrollPane();
   scrollPane1.setBounds(15, 54, 195, 202);
   scrollPane1.setViewportBorder(new LineBorder(new Color(0, 0, 0)));
   scrollPane1.setPreferredSize(new Dimension(185,195));
   scrollPane1.setLayout(null);   
   scrollPane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
   contentPane.add(scrollPane1);


    int b = 0;

    for(String s : XMLParser.ApplicationsListGUI)
    {
        b = b + 20;
        JLabel lbl = new JLabel("lbl"+s);
        lbl.setText(s);
        lbl.setBounds(10,b,100,15);
        scrollPane1.add(lbl);
        scrollPane1.revalidate();   
        lbl.setVisible(true);
    }   
}

では、なぜこのスクロールバーが表示されないのでしょうか?

4

2 に答える 2

1

scrollPaneAppsパネルのレイアウトがないため表示されません。したがって、この行を削除すると、表示されるはずです。

scrollPane1.setLayout(null);

それが役に立てば幸い。

于 2013-11-02T13:54:24.483 に答える