[EMAIL PROTECTED] napsal(a):
Ahoj,
mám asi docela začátečnickej dotaz ... hledal jsem na googlu a nic nenašel.
Chtěl jsem se zeptat neví někdo jak kreslit na rootPane od JFrame ?
zkousim to pres graphics
varianta 1:
Graphics g = getGraphics(); // nebo this.getGraphics();
g.setColor(Color.BLUE);
g.fillRect(10,10,50,50);
varinta 2:
Graphics g = getContentPane().getGraphics();
g.setColor(Color.BLUE);
g.fillRect(10,10,50,50);
ale bohuzel nefunguje .( ani jedna
pokud si treba na Image vytvořím graphics
BufferedImage bImg = new BufferedImage(.....);
Graphics gImg = bImg.createGraphics();
kreslit do obrázku můžu a je to v pohodě
Abych řekl všechno tak do
rootPane se mě podaří kreslit pokud přepíšu paint(Graphics g)
pak do g kreslím a všechno je v pohodě akorát pak nevím jak zajistit vykreslení
komponent.
Kresleni je popsane v tutorialu ke Swingu tady:
http://java.sun.com/docs/books/tutorial/uiswing/painting/practice.html
K problemu vyse - rekl bych,ze nema smysl neco vykreslit do JPanelu
jen tak. Aplikace musi byt schopna okno prekreslit, kdyz ho
zakryje jine okno a pak se zase odkryje, takze kresleni
by melo byt uvnitr paintComponent(). Kdyz nakreslim neco
bez vyzadani, tak se to pri pristim prekresleni ztrati.
Kdyz budu kreslit do BufferedImage, tak kreslim jenom do pameti,
a nebude to videt. Kdyz ten BufferedImage pouziju jako Image
do ikony v JLabel, tak se kresleni projevi az pri prekresleni ikony,
ktere muzu vynutit zavolanim repaint() na JLabelu.
Makub
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Science email: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--------------------------------------------------------------