Java Swing revalidate () vs repaint ()

Przygotowuję aplikację Swing, w której często chcę zastąpić zawartość JPanel. Aby to zrobić, dzwonięremoveAll(), następnie dodając moją nową treść, a następnie dzwoniącrevalidate().

Stwierdzam jednak, że stara treść jest nadal widoczna (choć zasłonięta przez nową zawartość). Jeśli dodam połączenie dorepaint() opróczrevalidate(), działa zgodnie z oczekiwaniami.

Jestem pewien, że przy innych okazjach doświadczyłem tego właśnie dzwoniącrevalidate() wystarczy.

Więc zasadniczo moje pytanie brzmi - czy powinienem wywołać obie funkcje, a jeśli nie, to kiedy powinienem zadzwonić do każdej z nich?

questionAnswers(5)

yourAnswerToTheQuestion