domingo, 29 de septiembre de 2013

UN EJEMPLO COMPLETO COMENTADO - VI

En la sentencia 28 (?ar.eiD:.bu3© ir.iPanei = new PaneiDibujoívi;) se crea un objeto de la clase PanelDibujo, definida en el Apartado 1.3.8. Por decirlo de alguna manera, los objetos de dicha clase son paneles, esto es superficies en las que se puede dibujar. Al constructor de PanelDibujo se le pasa como argumento el vector v con las referencias a los objetos a dibujar. La sentencia 29 (v encana.add(mipanel) ;) añade o incluye el panel (la superficie de dibujo) en la ventana; la sentencia 30 (ventana. secsise ísoo, 4ooj ,) establece el tamaño de la ventana enpixels: finalmente, la sentencia 31 (v encana.sesVisible(truel; ) hace visible la ventana creada.

¿Cómo se consigue que se dibuje todo esto? La clave está en la serie de órdenes que se han ido dando al computador. La clase PanelDibujo deriva de la clase Container a través de Panel, y redefme el método paintf) de Container. En este método, explicado en el Apartado 1.3.8. se realiza el dibujo de los objetos gráficos creados. El usuario no tiene que preocuparse de llamar al método paint(). pues se llama de modo automático cada vez que el sistema operativo tiene alguna razón para ello (por ejemplo cuando se crea la ventana, cuando se mueve, cuando se minimiza o maximiza. cuando aparece después de haber estado oculta, etc.). La Figura 1.1 muestra la ventana resultante de la ejecución del programa main() de la clase Ejemplol. Para entender más a fondo este resultado es necesario considerar detenidamente las clases definidas en los apartados que siguen

No hay comentarios:

Publicar un comentario