Java - jpanel

   
Vista:

jpanel

Publicado por Ricardo linero (12 intervenciones) el 11/04/2008 18:52:11
tengo una clase q extiende de JPANEL mas o menos como la q se muestra abajo. el problema es q en otra clase q es un JFRAME lo agrego...y dibuja sin problema, pero cuando lo minimizo o lo coloco detras de otra ventana...se borra lo que he dibujado, y el update me sirve....y tampoco el DECONIFY......pues a pesar de q funcionan correctamente no me regresan lo que ya tenia dibujado


public class panelGraf extends Panel
{

private String metodo;
private ArrayList arregloCompuesto;

public void graficar()
{
if(metodo.equals("ocupacion"))
{
graficarOcupacion();
}
else
{
graficarIngresos();
}
}

public void graficarOcupacion(ArrayList arreglo)
{
metodo="ocupacion";
arregloCompuesto=arreglo;
graficar();
}

public void graficarIngresos(ArrayList arreglo)
{
metodo="ingreso";
arregloCompuesto=arreglo;
graficar();
}



public void graficarOcupacion()
{
Graphics graphics=getGraphics();

graphics.setColor(Color.LIGHT_GRAY);
graphics.fillRect(10,100,670,320);

}

public void graficarIngresos()
{
Graphics graphics=getGraphics();

graphics.setColor(Color.LIGHT_GRAY);
graphics.fillRect(10,100,670,320);

}

public void update(Graphics g)
{
graficar();
}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:jpanel

Publicado por chuidiang (949 intervenciones) el 11/04/2008 23:18:08
Hola:

Cuando se maximiza la ventana o se pasa otra por encima y el panel necesita repintarse, java llama al método paint(Graphics g) del panel. Para que tu dibujo se repinte, debes heredar de JPanel (como lo estás haciendo) y sobreescribir el método void paint(Graphics g) y pintar en él lo que quieras.

Aquí tienes un ejemplo http://www.chuidiang.com/java/graficos/simple/grafico_simple.php

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar