clase graphics
DESCRIPTION
es una presentacion adecuada para aprender la clase graphicsTRANSCRIPT
![Page 1: Clase Graphics](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/1.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/2.jpg)
7/17/2019 Clase Graphics
http://slidepdf.com/reader/full/clase-graphics 2/20
![Page 3: Clase Graphics](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/3.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/4.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/5.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/6.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/7.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/8.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/9.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/10.jpg)
7/17/2019 Clase Graphics
http://slidepdf.com/reader/full/clase-graphics 10/20
Administradores dediseño
![Page 11: Clase Graphics](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/11.jpg)
7/17/2019 Clase Graphics
http://slidepdf.com/reader/full/clase-graphics 11/20
Administradores dediseño
![Page 12: Clase Graphics](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/12.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/13.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/14.jpg)
7/17/2019 Clase Graphics
http://slidepdf.com/reader/full/clase-graphics 14/20
Paneles como contenedores
![Page 15: Clase Graphics](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/15.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/16.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/17.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/18.jpg)
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](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/19.jpg)
7/17/2019 Clase Graphics
http://slidepdf.com/reader/full/clase-graphics 19/20
Fuentes
![Page 20: Clase Graphics](https://reader030.vdocuments.co/reader030/viewer/2022021115/563db9dd550346aa9aa0a060/html5/thumbnails/20.jpg)
7/17/2019 Clase Graphics
http://slidepdf.com/reader/full/clase-graphics 20/20
BIBLIOGRAFIA
• http://javabasico.osmosislatina.com/curso/java.htm
•
http://www.youtube.com/watch?v=XPmKayvb664• Aprenda Java. Como si estuviera en primero.
Tecnun
• http://www.unalmed.edu.co/~ jaguzman/docencia
_archivos/ob jetos/diapositivas/11-GUI-1.pdf