每当内容变得很大时,JscrollPane都不会启用ScrollBars

时间:2015-04-12 10:08:17

标签: java swing jbutton jscrollpane

我有一个JScrollPane processesScrollPane,它有一个JPanel processButtonPanel作为组件。现在在这个组件中,我添加了JButtons,它来自我在编程运行时填充的ArrayList。

我已经设置了JScrollPane的一些设置,但我遇到的问题是,当JPanel中有更多按钮然后我可以显示时,JScrollPane不能启用它的滚动条。

这里有一些代码片段:

    processesScrollPane = new JScrollPane();
    processesScrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
    processesScrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
    processesScrollPane.setBounds(12, 42, 221, 380);
    processPanel.add(processesScrollPane); //processPanel is the JPanel wich holds the JScrollPane

    processButtonPanel = new JPanel(); // here are the buttons added whenever they are made and placed in the buttonList
    processesScrollPane.setViewportView(processButtonPanel);
    processButtonPanel.setLayout(null);

    processesScrollPane.setViewportView(processButtonPanel);

    buttonList = new ArrayList<JButton>();

以及我制作按钮的代码:

    JButton b = new JButton("Process " + i);
    b.setBounds(12, 5 + (30*i), 174, 25);
    processButtonPanel.add(b);
    processButtonPanel.repaint();
    buttonList.add(b);

    processesScrollPane.revalidate();
    processesScrollPane.repaint();

(是的,我没有使用布局,但那是因为我不打算缩放整个窗口等)

任何人都可以帮我在正确的时间启用滚动条吗?

0 个答案:

没有答案