Para dibujar figuras como
rectángulos, líneas, círculos, etc., se utiliza el método Graphics.
Lo vamos a ir viendo sobre la práctica por lo que nos creamos una clase con el
método main y nos importamos los que paquetes que vamos a necesitar:
package swing;
import javax.swing.*;
import java.awt.*;
public class MarcoDibujo {
public static void main(String[] args) {
// TODO
Auto-generated method stub
}
}
Y nos creamos una clase que va a dibujar el marco y la
instanciamos en el método main:
package swing;
import javax.swing.*;
import java.awt.*;
public class MarcoDibujo {
public static void main(String[] args) {
MarcoConDibujo mimarco = new
MarcoConDibujo();
mimarco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mimarco.setVisible(true);
}
}
class MarcoConDibujo
extends JFrame {
public
MarcoConDibujo() {
setTitle("Marco
con dibujo");
setSize(400,
400);
}
}
Le ponemos un título, un tamaño, la instanciamos y la
hacemos visible y con el método setDefaultCloseOperation le
indicamos que cuando cerremos la ventana la ejecución de la aplicación se
detendrá.
A continuación, creamos una clase que va a contener la
lámina que vamos a llamar LaminaConDibujos que hereda de JPanel
class LaminaConDibujos
extends JPanel {
}
Creamos el método paintComponent que
le pasamos por parámetro el objeto Graphics dentro del método
lo primero que tenemos que hacer es llamar el método de la clase padre y le
pasamos como argumento el objeto de tipo Graphics
class LaminaConDibujos
extends JPanel {
public void
paintComponent(Graphics g) {
}
}
Hasta aquí nada nuevo, el código ya hemos visto su
explicación en los apartados anteriores. Aquí la novedad es el método drawRect que
sirve para dibujar rectángulos, este método va a recibir cuatro parámetros, los
dos primeros se refieren a la posición (superior izquierda) y los otros dos se
refieren al ancho y alto.
class LaminaConDibujos
extends JPanel {
public void
paintComponent(Graphics g) {
g.drawRect(50,
50, 200, 200);
}
}
Ahora incluimos nuestra lámina en el marco, para ello
dentro del constructor instanciamos la clase LaminaConDibujos:
LaminaConDibujos
milamina =new
LaminaConDibujos();
add(milamina);
Probamos:
4.3 ESCRIBIENDO EN EL FRAME << >> 4.4.2 Línea
No hay comentarios:
Publicar un comentario