kopiowanie Graphics z jednego panelu do drugiego

Odpowiedz Nowy wątek
kedzier87
2009-05-16 23:08
kedzier87
0

mam nastepujacy problem:
mam dwa panele (klasa Panel) chce przerysowac to co jest na jednym na drugi, czyli zamienic ich Graphics. jak to zrobic?

probowalem:
p[0].paint(p[1].getGraphics);
p[0].print(p[1].getGraphics);
p[0].update(p[1].getGraphics);

z gory dzieki za pomoc

Pozostało 580 znaków

2009-05-17 17:23

Rejestracja: 13 lat temu

Ostatnio: 4 lata temu

0

Nie wiem, czy da się to zrobić bezpośrednio kopiując jedną grafikę na drugą, ale podobny problem rozwiązałem niedawno dodatkowym obrazem, po którym maluję i później kopiuję go na panel.

final BufferedImage image = new BufferedImage(x, y, BufferedImage.TYPE_INT_RGB);
final Graphics2D graphics = image.createGraphics(); // na tym malujemy
JPanel panel = new JPanel() {
        @Override
        public void paint(Graphics g) {
            super.paint(g);
            final Graphics2D graphics2D = (Graphics2D) g;
            graphics2D.drawImage(image, 0, 0, image.getWidth(), image.getHeight(), null);
        }
};

Możesz zrobić podobnie z dwoma panelami i jednym obrazem.


Registered Linux user #456405 | SCJP 6 | SCWCD 5 | SCBCD 5

Pozostało 580 znaków

kedzier87
2009-05-17 19:25
kedzier87
0

ten kod niestety nie da zamierzonego (przeze mnie) efektu. sam piszesz ze na obiekcie image rysujemy, mi chodzi o to, zeby to CO JUZ JEST NARYSOWANE na jednym panelu pojawilo nie na innym (chodzi mi o to aby nie musiec informacji o pikselach czytac ponownie z pliku). mimo wszystko dzieki za odzew

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0