Разница между paint () и paintcomponent ()?

Я попробовал учебники по этому вопросу, но я до сих пор не совсем понимаю. В основном мой вопрос: какой метод лучше и почему? Должен ли я использовать paint или paintComponent ?

Пожалуйста, попробуйте сохранить ответ простым, спасибо.

Цитата из документации метода paint()

Этот метод фактически делегирует работу живописи трем защищенным методам: paintComponent, paintBorder и paintChildren. … Подclass, который просто хочет специализировать метод рисования интерфейса пользователя (внешний вид и восприятие), должен просто переопределить paintComponent.

Похоже, что метод paint() самом деле рисует компонент, включая границу и детей. Если вы хотите настроить внешний вид компонента, исключая границу и дочерние элементы, вы используете paintComponent() .

http://docs.oracle.com/javase/7/docs/api/javax/swing/JComponent.html#paint(java.awt.Graphics)

Вообще говоря, при рисовании в Swing рекомендуется переопределять paintComponent .

Существует несколько причин, по которым paintComponent окрашивается в нижний слой, что означает, что вы случайно не уничтожите какие-либо компоненты, которые были обработаны во время процесса рисования – это очень часто происходит для людей, которые размещают здесь.

Есть, очень, несколько раз, вам может потребоваться переопределить paint , но я всегда предлагаю вам сначала попробовать работать с paintComponent .

Проверять, выписываться

  • Выполнение пользовательской покраски
  • Картина в AWT и Swing (+1 to trashgod)
  • Почему я не должен называть setVisible (true) перед добавлением компонентов?
  • Как закрыть приложение Java Swing из кода
  • вызов java-метода для рисования графики
  • Установка цвета фона для JFrame
  • Автозаполнение JComboBox
  • Как реализовать в Java (class JTextField), чтобы разрешить вводить только цифры?
  • Использование JFileChooser с Swing GUI-classами и слушателями
  • jScrollPane не может добавить компонент
  • Отображать неопределенный JProgressBar при запуске командного файла
  • Как изменить форму вкладки JTabbedPane?
  • Структура каталогов Java JTree из путей к файлам
  • Давайте будем гением компьютера.