Слушай, я не могу ответить на то, что тебе нужно, потому что я не помню большую часть разметки свинга.Я давно с ним не работаю ...
Но, удаляя настройку макета (я помню) на вашем JPanel, он работает с этим кодом:
public JButtonO() {
super("the button");
this.setSize(400, 200);
// Create a panel with a borderlayout
JPanel jpanel = new JPanel(new BorderLayout());
JLabel label = new JLabel("Output Items:");
label.setAlignmentX(1);
label.setAlignmentY(1);
// Add Label to top of layout
jpanel.add(label, BorderLayout.NORTH);
JList conList = new JList(values);
conList.setVisibleRowCount(3);
JScrollPane scroller = new JScrollPane(conList);
//AddScroll to center
jpanel.add(scroller);
//Add Panel to JFrame
this.add(jpanel);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
Я думаю, чтоПроблемы - это стандартный компоновщик JPanel.Из-за того, как это работает, ваш свиток не был «сжат» настолько, чтобы создавать свитки ...
Надеюсь, это поможет, даже без лишних объяснений ...
В действительности: после того, как я отправлю ответЯ видел вашу ошибку.Теперь я могу объяснить, что не так.Вы уже добавили свой JList в JScrollPane здесь:
JScrollPane scroller = new JScrollPane(conList);
Но после этого вы поместили его в JPanel:
panel.add(conList);
это изменится, где будет отображаться ваш JList, и позволитJScroll снова пусто.Без компонентов он будет отображаться с размером 0x0 и не будет отображаться (даже находясь там).
Теперь я думаю, что помог = D