Как рисовать за пределами краскиКомпонент? - PullRequest
0 голосов
/ 08 мая 2011

У меня есть холст, который рисует все в методе paintComponent().

Можно ли рисовать вне paintComponent (без вызова метода в paintComponent?)

Если так, то как ты это делаешь?

Ответы [ 2 ]

2 голосов
/ 08 мая 2011

Это зависит от того, что вы имеете в виду и зачем вам это нужно. Например, можно создать BufferedImage, получить объект Graphics2D, Graphics.paint() все, что должно быть на изображении, а затем перетащить изображение в JLabel.

Но поскольку я не знаю, что вы пытаетесь достичь (в отличие от того, что вы пытаетесь сделать ), я не могу знать, решает ли этот ответ неустановленную проблему. 1013 *

0 голосов
/ 08 мая 2011

Я узнал, как решить эту проблему.

Я сделал JPanel внутренним классом для своего класса JFrame.

В JPanels paintComponent он вызывал метод из внешнего класса, который обновлял графику путем передачи объекта paintComponents Graphics2D.

Это позволило мне рисовать "за пределами" paintComponent, так, как мне было нужно.

...