La clase Graphics es una clase abstracta (es decir, no pueden instanciarse objetos Graphics). Esto contribuye a la portabilidad de java. Como el dibujo se lleva a cabo de diferente manera en cada plataforma que soporta a java, no puede haber una accion de implemento de las herramientas de dibujo en todos los sistemas, es decir, las herramientas usadas para dibujar graficos en windows son distintas a las usadas en linux, o en mac. Cada plataforma tiene su implementacion de la clase Graphics y esta implementacion esta oculta para nosotros por medio de la clase Graphics.
La funcion paint y update nos suministran el contexto grafico del applet o del componente, en otros casos, hemos de obtener el contexto grafico del componente mediante la función getGraphics.Una vez obtenido el contexto grafico podemos llamar desde este objeto a las funciones graficas definidas en la clase Graphics.
public void paint(Graphics g){
//usar el contexto gráfico g
}
public void update(Graphics g){
//usar el contexto gráfico g
}
void funcion(){
Graphics g=getGraphics();
//usar el contexto gráfico g
g.dispose();
}
Como vemos en esta porcion de codigo existe una sutil diferencia entre suministrar y obtener el contexto grafico g. Solamente es necesario liberar los recursos asociados al contexto g, mediante la llamada a la función dispose, cuando se obtiene el contexto grafico mediante getGraphics.
No hay comentarios:
Publicar un comentario