La clase Canvas es una parte de Java AWT. El lienzo es un área rectangular en blanco donde el usuario puede dibujar o atrapar la entrada del usuario. La clase Canvas hereda la clase Component.
Los constructores de la clase Canvas son:
- Canvas() : Crea un nuevo lienzo en blanco.
- Canvas(GraphicsConfiguration c) : Crea un nuevo lienzo con una configuración gráfica específica.
Métodos comúnmente utilizados en Canvas Class
Método | Explicación |
---|---|
agregarNotificar() | Crea el par del lienzo. |
createBufferStrategy(int n) | Crea una nueva estrategia para almacenamiento en búfer múltiple en este componente. |
createBufferStrategy(int n, BufferCapabilities c) | Crea una nueva estrategia para almacenamiento en búfer múltiple en este componente con las capacidades de búfer requeridas |
getBufferStrategy() | Devuelve la BufferStrategy utilizada por este componente. |
pintura (Gráficos g) | pinta este componente. |
actualizar (Gráficos g) | actualiza este lienzo. |
Los siguientes programas ilustran el uso de Canvas Class:
- Programa 1: Para crear un lienzo y pintar el lienzo.
Java
// Java Program to create a to create // a canvas and paint the canvas import java.awt.*; import javax.swing.*; class canvas extends JFrame { // constructor canvas() { super("canvas"); // create a empty canvas Canvas c = new Canvas() { // paint the canvas public void paint(Graphics g) { // set color to red g.setColor(Color.red); // set Font g.setFont(new Font("Bold", 1, 20)); // draw a string g.drawString("This is a canvas", 100, 100); } }; // set background c.setBackground(Color.black); add(c); setSize(400, 300); show(); } // Main Method public static void main(String args[]) { canvas c = new canvas(); } }
- Producción:
- Programa 2: para crear un lienzo y agregar un detector de mouse al lienzo (aparecerá un círculo de radio 5 en los puntos donde se hace clic o se arrastra el mouse en el lienzo).
Java
// Java Program to create a // canvas and mouse listener to the // canvas ( a circle of radius 5 will appear // at the points where mouse are clicked or // dragged on the canvas) import java.awt.*; import javax.swing.*; import java.awt.event.*; class canvas extends JFrame implements MouseListener, MouseMotionListener { // create a canvas Canvas c; // constructor canvas() { super("canvas"); // create a empty canvas c = new Canvas() { public void paint(Graphics g) { } }; // set background c.setBackground(Color.black); // add mouse listener c.addMouseListener(this); c.addMouseMotionListener(this); add(c); setSize(400, 300); show(); } // mouse listener and mouse motion listener methods public void mouseClicked(MouseEvent e) { Graphics g = c.getGraphics(); g.setColor(Color.red); // get X and y position int x, y; x = e.getX(); y = e.getY(); // draw a Oval at the point // where mouse is moved g.fillOval(x, y, 5, 5); } public void mouseMoved(MouseEvent e) { } public void mouseDragged(MouseEvent e) { Graphics g = c.getGraphics(); g.setColor(Color.red); // get X and y position int x, y; x = e.getX(); y = e.getY(); // draw a Oval at the point where mouse is moved g.fillOval(x, y, 5, 5); } public void mouseExited(MouseEvent e) { } public void mouseEntered(MouseEvent e) { } public void mouseReleased(MouseEvent e) { } public void mousePressed(MouseEvent e) { } // main class public static void main(String args[]) { canvas c = new canvas(); } }
- Producción:
Referencia: https://docs.oracle.com/javase/7/docs/api/java/awt/Canvas.html
Publicación traducida automáticamente
Artículo escrito por andrew1234 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA