scrollpane блокирует кнопки в BorderLayout? - PullRequest
2 голосов
/ 08 октября 2011

У меня действительно странная проблема с JScrollPane и BorderLayout. Для краткого объяснения: у меня есть JTable, который находится внутри JScrollPane, и это с JPanel и JTableHeader на JTabbedPane. Очень простой макет. Если я добавлю только JTable к моей JPanel, кнопки будут работать. Если я добавлю JScrollPane, кнопки больше не будут работать, поэтому я не могу нажать на них! ActionLister никогда не достигается, и я не вижу анимацию щелчка.

Пример кода для объяснения:

d_pane = new JPanel();
d_button = new JPanel();
d_pane.add(table.getTableHeader(), BorderLayout.PAGE_START);
dl_scroll = new JScrollPane(table);
d_pane.add(dl_scroll, BorderLayout.CENTER);
// d_button is ridLayouted with 3 Buttons in there
d_pane.add(d_button, BorderLayout.PAGE_END);

1 Ответ

2 голосов
/ 08 октября 2011

1) JScrollPane заботится о самом заголовке таблицы. Не добавляйте его на панель.

2) кажется, что кнопка не получает события мыши, возможно, из-за того, что над ней находится другой компонент - у вас есть другие компоненты / код в настройке?

...