Для рисования компонентов используется ComponentUI. Этот класс пользовательского интерфейса имеет метод рисования и используется для рисования компонента. Метод рисования использует настройки L & F, которые хранятся как свойства в UIManager.
Для создания собственного компонента RoundButton
, например, начиная с. AbstractButton
Вы можете создать свой собственный RoundButtonUI
(возможно, начиная с ButtonUI
). Здесь вы можете создать свой собственный метод рисования, используя свойства обычной кнопки, например Button.font
или Button.foreground
, чтобы нарисовать свой собственный компонент с теми же значениями L & F, что и у обычной кнопки.
В вашем классе RoundButton
вы должны реализовать метод getUIClassID()
, который будет возвращать строку "RoundButtonUI"
. Это заставляет вас использовать RoundButtonUI
.
Хороший пример - JButton
.