goldegard (Normal User)
Newbie
Messaggi: 1
Iscritto: 14/01/2011
|
Salve sto imparando ad usare java e ho un problemino con il disegno di figure su un jPanel, in sostanza io vorrei creare un array di figure da poter visualizzare attraverso l'override del metodo paintComponent,
se nel metodo inserisco una per una tutte le istanze dell'array (g.draw(array[1]);g.draw(array[2])...) non ci sono problemi, mentre se sostituisco le chiamate con un'unico ciclo for non mi disegna niente.Qualcuno sa perchè?mi sfugge qualcosa a livello teorico?
Posto il codice:
Codice sorgente - presumibilmente Java |
import javax.swing.*; import java.awt.*; import java.awt.geom.*; import java.awt.Graphics2D; import java.util.LinkedList; frame.setSize(500,500); frame.setVisible(true); frame. setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); PanPaint panel = new PanPaint(); bar.add(file); bar.add(disegna); file.add(nuovo); file.add(salva); file.add(apri); disegna.add(linea); disegna.add(rettangolo); disegna.add(cerchio); } public static void main (String[] args ){ } } class PanPaint extends JPanel{ private static final long serialVersionUID = 1L; PanPaint(){ } protected void paintComponent (Graphics g ) { super.paintComponent(g); for(int i=0; i==shapes.length;i++){ g1.draw(shapes[i]); } } }
|
|