我有一个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();
(是的,我没有使用布局,但那是因为我不打算缩放整个窗口等)
任何人都可以帮我在正确的时间启用滚动条吗?