powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Swing. Как правильно передать свой объект для рисовать холсту и отрисовать его?
3 сообщений из 3, страница 1 из 1
Swing. Как правильно передать свой объект для рисовать холсту и отрисовать его?
    #39296404
I dont know
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток, не могу сообразить как поступить, поэтому задаю тут вопрос, попробую его пояснить: есть холст(просто класс унаследованный от JPanel),

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
public class DrawArea extends JPanel{


@Override
protected void paintComponent(Graphics g) {
    super.paintComponent(g); 
    Graphics2D g2d = (Graphics2D) g;
    // ...
    }
}



на ней хочу рисовать некоторые сущности. Сущности разные, но чтобы мой холст мог их все рисовать я создал интерфейс:

Код: sql
1.
2.
3.
4.
5.
public interface IDrawable {
    public Dimension getSize();  
    public Rectangle getContentBBox();
    public void draw(Graphics g, double scaleFactor);
}



По задумке, в дальнейшем, я буду создавать некий класс, имплементирующий этот интерфейс и мне нужно каким-то образом передавать его извне в DrawArea чтобы он отрисовался. Как это сделать?

Была мысль сделать метод в своём классе DrawArea, что-то типа
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
public class DrawArea extends JPanel{

 // ...

    public void drawContent(TR_IDrawable content) {
        Graphics2D g2d = (Graphics2D)this.getGraphics();
        content.draw(g2d);
    }
}


но в таком случае не понятно, как её использовать, ведь есть ещё "родной" метод paintComponent(), и вроде как нужно в нём отрисовывать, с ним как быть, или можно как-то свою ф-ию drawContent вызывать в paintComponent()? Как вообще делают в таких случаях?
...
Рейтинг: 0 / 0
Swing. Как правильно передать свой объект для рисовать холсту и отрисовать его?
    #39296437
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
I dont knowСущности разные, но чтобы мой холст мог их все рисовать я создал интерфейс:
вместо интерфейса - абстрактный класс Фигура и + полиморфизм.
...
Рейтинг: 0 / 0
Swing. Как правильно передать свой объект для рисовать холсту и отрисовать его?
    #39296576
I dont know
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

Тоже об этом подумал, спасибо.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Swing. Как правильно передать свой объект для рисовать холсту и отрисовать его?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]