Итак, у меня есть JFrame, внутри которого у меня есть JScrollPane и внутри JScrollPane у меня есть JPanel. У меня есть кнопка мыши, которая изменяет JPanel внутри JScrollPane. Код в слушателя мыши:Обновление представления только после изменения размера JFrame
@Override
public void mouseClicked(MouseEvent arg0) {
searchResult.updateInfo();
}
Метод updateInfo добавляет кучу JPanel в SearchResult JPanel. После нажатия кнопки, связанной с этим прослушивателем, ничего не происходит, но когда я изменяю размер JFrame, он обновляет представление. Почему это?
Я пытался перекрасить JFrame, но это не решает мою проблему
Это связано с тем, что LayoutManager запрашивается только при первом представлении о том, как компоновать компоненты. Вы должны сказать компоненту, чтобы попросить LayoutManager сделать это снова, вызвав 'revalidate()', как сказано здесь. – ZeissS
спасибо! это решило мою проблему – aherlambang