SlideShare una empresa de Scribd logo
En esta práctica vamos a poner un ejemplo sencillo de cómo conseguir la ilusión de movimiento en un Applet Java utilizando el método
sleep() de la clase Thread e implem entando el método run() de la interfaz Runnable. La animación desplaza un cuadrado de
izquierda a derecha y de arriba abajo de la pantalla.

import java.applet.*;
import java.awt.*;

public class AppletAnimado extends Applet implements Runnable{

         private    static final long serialVersionUID = 4660165748093895974L;
         private    Thread hilo = null;
         boolean    continuar = true;
         private    int pos_x;
         private    int pos_y;

         public void init(){
                pos_x = 10;
                pos_y = 10;
                hilo = new Thread(this);
                hilo.start();
         }

         public void destroy(){
          continuar = false;
          hilo = null;
         }

         public void paint(Graphics g){
                g.setColor(Color.RED);
                g.fillRect(pos_x, pos_y, 10, 10);
         }

         public void run(){
                while(continuar){
                        repaint();
                        pos_x += 10;

                             if(pos_x > 200){
                                    pos_x = 10;
                                    pos_y +=10;
                             }

                             if(pos_y > 200){
                                    pos_y = 10;
                             }

                             try{
                                    hilo.sleep(50);// Espera 50 milisegundos antes de continuar.
                             }catch (Exception e){
                                    System.out.println(e);
                             }
                   }
       }
}//Fin clase.




                                                                              bitCoach::Juan Bautista Cascallar Lorenzo

Más contenido relacionado

PDF
Sincronizar Threads
DOCX
Dhcp defectto
PDF
Java::Acceso a Bases de Datos
PDF
Java ArrayList Iterator
PDF
Java HashMap
PDF
Sincronizar Threads
Dhcp defectto
Java::Acceso a Bases de Datos
Java ArrayList Iterator
Java HashMap

La actualidad más candente (20)

DOCX
Correccion de la prueba mfsi
DOCX
Declaraciones
PDF
Java Applet:::Pelota que rebota en un recinto.
DOCX
Declaraciones
PPTX
Tutorial n°3 excel 2010
DOCX
Código fuente en c
PDF
Java
PDF
Escalada de privilegios mediante infección ELF. Fist Conference
DOCX
Cifrado del cesar
PDF
Groovy no es java sin punto y coma v3
DOCX
Colas 1er ejercicio
PDF
Python3000
DOCX
Taller Matrices En Java
DOCX
Resumen de derivadas
DOC
Acmar trucos de visual basic(2)
PPTX
Hablemos de promesas
PPTX
Práctica de calculadora documentada
PDF
Jyoc java-cap20 listas, colas y pilas
Correccion de la prueba mfsi
Declaraciones
Java Applet:::Pelota que rebota en un recinto.
Declaraciones
Tutorial n°3 excel 2010
Código fuente en c
Java
Escalada de privilegios mediante infección ELF. Fist Conference
Cifrado del cesar
Groovy no es java sin punto y coma v3
Colas 1er ejercicio
Python3000
Taller Matrices En Java
Resumen de derivadas
Acmar trucos de visual basic(2)
Hablemos de promesas
Práctica de calculadora documentada
Jyoc java-cap20 listas, colas y pilas
Publicidad

Similar a Ejemplo de movimiento en un applet (Thread::Runnable) (20)

TXT
Lab
PDF
Codigo ejemplo j2 me
DOCX
Ejemplo 18 animación usando gamecanvas
PDF
Transacción
PPTX
Manejo de eventos en java
PDF
Applets.pdf
DOCX
Multitarea e hilos en java con ejemplos
PDF
Concurrencia en Java
PPT
DOCX
Programacion ii
PDF
Mannual de moviles
PDF
Comunicaciones en Java
PPTX
Interfaz gráfica de usuario
PPT
Applets
PPT
Programación en Java: Applets
PPTX
Interfaces con Java
PDF
Greenfoot 10
PDF
Greenfoot 10
Lab
Codigo ejemplo j2 me
Ejemplo 18 animación usando gamecanvas
Transacción
Manejo de eventos en java
Applets.pdf
Multitarea e hilos en java con ejemplos
Concurrencia en Java
Programacion ii
Mannual de moviles
Comunicaciones en Java
Interfaz gráfica de usuario
Applets
Programación en Java: Applets
Interfaces con Java
Greenfoot 10
Greenfoot 10
Publicidad

Más de jubacalo (20)

PDF
jQuery Mobile :: Cuadros de diálogo
PDF
jQuery Mobile :: Enlaces a páginas internas.
PDF
MIT App Inventor2 Pintar en Imagen
PDF
Cronómetro con MIT App Inventor 2
PDF
App Android MiniBanco
PDF
Configurar entorno Android
PDF
Acceso a BBDD mediante un servlet
PDF
Find File Servlet DB
PDF
Acciones JSP
PDF
Servlets que manejan datos de formularios HTML
PDF
Jsp directiva page
PDF
Elementos de script en JSP
PDF
Proyecto JSP
PDF
Explicación del código del Servlet HolaMundo
PDF
Servlet Hola Mundo con Eclipse y Tomcat
PDF
Crear Base de Datos en Oracle
PDF
Web de noticias en Ajax
PDF
Escenarios
PDF
Matrices02
PDF
Gráficos
jQuery Mobile :: Cuadros de diálogo
jQuery Mobile :: Enlaces a páginas internas.
MIT App Inventor2 Pintar en Imagen
Cronómetro con MIT App Inventor 2
App Android MiniBanco
Configurar entorno Android
Acceso a BBDD mediante un servlet
Find File Servlet DB
Acciones JSP
Servlets que manejan datos de formularios HTML
Jsp directiva page
Elementos de script en JSP
Proyecto JSP
Explicación del código del Servlet HolaMundo
Servlet Hola Mundo con Eclipse y Tomcat
Crear Base de Datos en Oracle
Web de noticias en Ajax
Escenarios
Matrices02
Gráficos

Último (20)

DOCX
PLAN DE AREA DE CIENCIAS SOCIALES TODOS LOS GRUPOS
PDF
IPERC...................................
PDF
Iniciación Al Aprendizaje Basado En Proyectos ABP Ccesa007.pdf
PDF
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
PDF
EL aprendizaje adaptativo bajo STEM+H.pdf
PDF
5°-UNIDAD 5 - 2025.pdf aprendizaje 5tooo
PDF
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
PDF
Escuelas Desarmando una mirada subjetiva a la educación
PDF
La Inteligencia Emocional - Fabian Goleman TE4 Ccesa007.pdf
PDF
Introduccion a la Investigacion Cualitativa FLICK Ccesa007.pdf
PDF
LIBRO 2-SALUD Y AMBIENTE-4TO CEBA avanzado.pdf
PDF
MATERIAL DIDÁCTICO 2023 SELECCIÓN 1_REFORZAMIENTO 1° BIMESTRE_COM.pdf
PDF
Teologia-Sistematica-Por-Lewis-Sperry-Chafer_060044.pdf
PDF
TOMO II - LITERATURA.pd plusenmas ultras
DOCX
V UNIDAD - PRIMER GRADO. del mes de agosto
DOCX
Informe_practica pre Final.docxddadssasdddddddddddddddddddddddddddddddddddddddd
PDF
2.0 Introduccion a processing, y como obtenerlo
PDF
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
PDF
Unidad de Aprendizaje 5 de Matematica 2do Secundaria Ccesa007.pdf
PPTX
LAS MIGRACIONES E INVASIONES Y EL INICIO EDAD MEDIA
PLAN DE AREA DE CIENCIAS SOCIALES TODOS LOS GRUPOS
IPERC...................................
Iniciación Al Aprendizaje Basado En Proyectos ABP Ccesa007.pdf
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
EL aprendizaje adaptativo bajo STEM+H.pdf
5°-UNIDAD 5 - 2025.pdf aprendizaje 5tooo
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
Escuelas Desarmando una mirada subjetiva a la educación
La Inteligencia Emocional - Fabian Goleman TE4 Ccesa007.pdf
Introduccion a la Investigacion Cualitativa FLICK Ccesa007.pdf
LIBRO 2-SALUD Y AMBIENTE-4TO CEBA avanzado.pdf
MATERIAL DIDÁCTICO 2023 SELECCIÓN 1_REFORZAMIENTO 1° BIMESTRE_COM.pdf
Teologia-Sistematica-Por-Lewis-Sperry-Chafer_060044.pdf
TOMO II - LITERATURA.pd plusenmas ultras
V UNIDAD - PRIMER GRADO. del mes de agosto
Informe_practica pre Final.docxddadssasdddddddddddddddddddddddddddddddddddddddd
2.0 Introduccion a processing, y como obtenerlo
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
Unidad de Aprendizaje 5 de Matematica 2do Secundaria Ccesa007.pdf
LAS MIGRACIONES E INVASIONES Y EL INICIO EDAD MEDIA

Ejemplo de movimiento en un applet (Thread::Runnable)

  • 1. En esta práctica vamos a poner un ejemplo sencillo de cómo conseguir la ilusión de movimiento en un Applet Java utilizando el método sleep() de la clase Thread e implem entando el método run() de la interfaz Runnable. La animación desplaza un cuadrado de izquierda a derecha y de arriba abajo de la pantalla. import java.applet.*; import java.awt.*; public class AppletAnimado extends Applet implements Runnable{ private static final long serialVersionUID = 4660165748093895974L; private Thread hilo = null; boolean continuar = true; private int pos_x; private int pos_y; public void init(){ pos_x = 10; pos_y = 10; hilo = new Thread(this); hilo.start(); } public void destroy(){ continuar = false; hilo = null; } public void paint(Graphics g){ g.setColor(Color.RED); g.fillRect(pos_x, pos_y, 10, 10); } public void run(){ while(continuar){ repaint(); pos_x += 10; if(pos_x > 200){ pos_x = 10; pos_y +=10; } if(pos_y > 200){ pos_y = 10; } try{ hilo.sleep(50);// Espera 50 milisegundos antes de continuar. }catch (Exception e){ System.out.println(e); } } } }//Fin clase. bitCoach::Juan Bautista Cascallar Lorenzo