Witam, mam taki problem, ze chce na jPanelu narysowac kratownice o wymiarach oczka 58x58pix. W czym problem? Ano w tym, ze gdy ja narysuje to chcialbym aby ona juz na tym panelu zostala na stale i zeby nic nie bylo jej w stanie usunac czy zamazac, bo wykonuje na Panelu jeszcze inne operacje graficzne, typu przesuwanie obrazka itp. Probowalem zrobic tak, ze napisalem klase dziedziczaca po JPanelu i tam zmodyfikowalem metode paint by malowala kratownice ale niestety dalsze dzialania na panelu powoduja ze i tak jest ona zamazywana. Jest na to jakas madra rada? Prosilbym raczej o odpowiedzi w miare proste bo nie jestem omnibusem w Javie;)
Pozdrawiam
Niech w metodzie paint() rysowanie kratownicy będzie ostatnią czynnością.
hmm no jak na razie jest to jedyna czynnosc jaka wykonuje metoda paint:) Chodzilo o to by nie musiec malowac calej grafiki w drugiej klasie, tej dziedziczacej jPanel. Bo glowna aplikacje to JFrame i na niej sa dwa panele. Rzecz w tym, ze chce rysowac na jednym panelu na ktorym tlem ma byc kratownica;)
JFrame ma takie cos co pokrywa ja cala - JFrame.getGlassPane(). Mozesz to pobrac, narysowac kratownice tam (musisz zdaje sie uwazac na koordynaty bo glass pokrywa calego frame). Ta kratownica bedzie na wierzchu zawsze i nie bedzie potrzeby jej ponownie rysowac.
Chyba ;-P
O glass pane poczytasz w tutku suna do swinga.
chyba?:D sprawdze to zaraz;) ale inne pomyly rowneiz mile widziane:D
Problem rozwiazany: dla innych majacych podobny problem pozostawiam taki kod, ktory pozwoli na rysowanie "po szybie" - GlassPane:
Component cp = getRootPane().getGlassPane();
Graphics g = cp.getGraphics();