20
CLASE GRAPHICS Y SUS METODOS Ing. Martha Lucia Tello Lenguaje de Programación

Clase Graphics

Embed Size (px)

DESCRIPTION

es una presentacion adecuada para aprender la clase graphics

Citation preview

Page 1: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 1/20

CLASE GRAPHICS Y

SUS METODOS

Ing. Martha Lucia Tello

Lenguaje de Programación

Page 2: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 2/20

Page 3: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 3/20

 Jerarquia de clases para

las GUI•   Component: superclase de todas las clases de

interfaz gráfica.

•   Container: para agrupar componentes.

  JComponent:   superclase de todos loscomponentes de Swing que se dibujandirectamente en los lienzos (canvas). Sus subclasesson los elementos básicos de la GUI.

•   JFrame:  ventana que no está contenida en otrasventanas.

Page 4: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 4/20

 Jerarquia de clases para

las GUI•   JDialog: cuadro de diálogo.

•   JApplet: subclase de Applet para crear applets tipoSwing.

  JPanel:   contenedor invisible que mantienecomponentes de interfaz y que se puede anidar,colocándose en otros paneles o en ventanas.También sirve de lienzo.

•   Graphics:   clase abstracta que proporcionacontextos gráficos donde dibujar cadenas detexto, líneas y otras formas sencillas

Page 5: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 5/20

 Jerarquia de clases para

las GUI•   Color: color de los componentes gráficos.•   Font: aspecto de los caracteres.•   FontMetrics:  clase abstracta para propiedades de las

fuentes.Categorías de clases:Contenedores:•   „Frame, JApplet, JWindow, JDialogComponentes intermedios:•   „Panel, JScrollPane

Componentes:•   Label, JBbutton, JTextField, JTextArea, ...•   Clases de soporte:•   „Graphics, Color, Font, ...

Page 6: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 6/20

Clase Graphics

•  Proporciona el entorno de trabajo para cualquier operación gráfica que se realice dentro del AWT.

•  Permite dibujar elipses, cuadrados, líneas, mostrar 

texto y también tiene muchos otros métodos dedibujo.

•   Para poder pintar, un programa necesita uncontexto gráfico válido, representado por una

instancia de la clase Graphics. Pero esta clase nose puede instanciar directamente; así quedebemos crear un componente y pasarlo alprograma como un argumento al método paint().

Page 7: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 7/20

Algunos métodos deGraphics

•   g.setColor(Color.blue);

•   g.setBackground(Color.red);

  g.drawLine(int x1, int y1, int x2, int y2);•   g.drawRect(int x, int y, int ancho, int alto);

•   g.drawRoundedRect(int x, int y, int ancho, int alto,int arcWidth, int arcHeight);

•   g.fillRect(int x, int y, int ancho, int alto);

Page 8: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 8/20

Algunos métodos deGraphics

•   g.fillRoundedRect(int x, int y, int ancho, int alto,

•   int arcWidth, int arcHeight);

  g.drawOval(int x, int y, int ancho, int alto);•   g.fillOval(int x, int y, int ancho, int alto);

•   g.drawArc(int x, int y, int ancho, int alto, int ang1, intang2);

•   g.drwaString(String cadena, int x, int y);•   g.setFont(Font f);

Page 9: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 9/20

Método paint()•   El único argumento del  método paint() es un objeto de

esta clase. La clase Graphics dispone de métodos parasoportar tres categorías de operaciones gráficas:

1) Dibujo de primitivas gráficas

2) Dibujo de texto3) Presentación de imágenes en formatos *.gif y *.jpeg.

•   Además, la clase Graphics mantiene un contextográfico: un área de dibujo actual, un color de dibujo del

Background  y otro del Foreground, un Font con todassus propiedades, etc.

•   Los ejes están situados en la esquina superior izquierda.

•   Las coordenadas se miden siempre en pixels.

Page 10: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 10/20

Administradores dediseño

Page 11: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 11/20

Administradores dediseño

Page 12: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 12/20

•   GridLayout:   proporciona gran flexibilidad parasituar Componentes. El layout se crea con unnúmero de filas y columnas y los Componentes vandentro de las celdas de la tabla así definida.

Administradores de diseño

Page 13: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 13/20

Canvas•   Los canvas son lienzos o zonas de dibujo.•   Son un Componente básico que captura eventos

de exposición (expose), de ratón y demás eventosrelacionados.

  Los   canvas   simplifican la producción de appletsque necesitan una única funcionalidad paradistintas áreas.

Page 14: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 14/20

Paneles como contenedores

Page 15: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 15/20

Dibujo de gráficos en paneles•   JPanel se puede usar para dibujar.

•   Para dibujar en un panel se crea una clase derivada deJpanel y se redefine el método  paintComponent() quele indica al panel como dibujar.

  La clase Graphics es una clase abstracta para todos loscontextos gráficos.

•   Una vez obtenido el contexto gráfico podemos llamar desde este objeto a las funciones gráficas definidas enla clase Graphics.

  Graphics contiene información acerca de la zona quenecesita ser redibujada: el objeto donde dibujar, unorigen de traslación, el color actual, la fuente actual,etcétera.

Page 16: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 16/20

Dibujo de gráficos en paneles

•   Cuando utilizamos el método   paintComponent()para dibujar en un contexto gráfico g, ese contextoes un ejemplar de una subclase concreta de laclase Graphics para la plataforma específica.

•   El método paintComponent() es llamado la primeravez y cada vez que es necesario redibujar elcomponente.

Page 17: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 17/20

Dibujo de gráficos en paneles•  Al hacer  super.paintComponent(g) nos aseguramos

de que el área visualizada se limpia antes de volver a dibujar.

class MiPanel extends JPanel {

public void paintComponent(Graphics g) {

super.paintComponent(g);

g.drawString("Interfaz gráfica", 40, 40);

}

}

Page 18: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 18/20

Clase Color•   La clase   java.awt.Color  encapsula colores utilizando el

formato RGB (Red, Green, Blue).

•   Los componentes de cada color primario en el color resultante se expresan con números enteros entre 0 y255, siendo 0 la intensidad mínima de ese color y 255 lamáxima.

•   En la clase Color existen constantes para colores

predeterminados de uso frecuente: black, white, green,blue, red, yellow, magenta, cyan, orange, pink, gray,darkGray, lightGray.

Page 19: Clase Graphics

7/17/2019 Clase Graphics

http://slidepdf.com/reader/full/clase-graphics 19/20

Fuentes