Swing.GUI. Свои компоненты

 
 
 
Сообщения:1
Совершенно уже запутался в теме UI. То есть я могу работать со стандартными компонентами, но вот с созданием своих сильнейшие проблемы. Сначала в принципе не понимал как это делать, потом где то вычитал про различные BasicUi в которых нужно переопределять метод paint(). В общем, решил сделать свою пробную кнопку, которой добавил свой собственный BasicUi, метод paint(), который в свою очередь выглядел так:

public void paint(Graphics g, JComponent c) {
g.drawImage(result.getImage(),c.getX(),c.getY(),c.getWidth(),c.getHeight(),null);
}
result - это ImageIcon

То есть все банальнее некуда. Просто пытаюсь отрисовать свою картинку. В результате оказалась, что эта кнопка более менее нормально работает только с расположением GridLayout. Например в Flow она просто не выводится, а в Border только по центру. Потом попробовал перейти на MigLayout и тоже безрезультатно. В итоге плюнув на все перешел на автоматический построитель GUI(NetBeans) и там та же ситуация.

Зачем тогда нужен метод paintComponent(), если прорисовка идет через UI?

В общем, я определено чего то не понимаю в создание своих компонентов. Кто может, пожалуйста, хотя бы натолкните в правильном направление, а то я совсем уже запутался.
 
 
Сообщения:1
Для начала: http://www.skipy.ru/technics/gui_int.html
и
https://www.codeproject.com/Articles/62099/UI-Component-Development-in-Java-Swing-Part-Desi
Изменен:29 июн 2018 09:09
 
 
Сообщения:721
Иван Портянкин
Библиотека Программиста
Swing ЭФФЕКТНЫЕ ПОЛЬЗОВАТЕЛЬСКИЕ ИНТЕРФЕЙСЫ
 
Модераторы:Нет
Сейчас эту тему просматривают:Нет