Cómo Responder al Ratón / Cómo Arrastrar un Objeto Restituido
Visitors to VTC.com will be able to view all introductory videos for each training course.
Free Trial Members will gain access to first three chapters for each training course.
Full Access Members have full access to VTC.com’s entire library of video tutorials.
Learn More
Subtitles of the Movie
Ha tenido experiencia tratando de arrastrar un elemento en la pantalla para colocarlo en un nuevo lugar y al soltar el botón del ratón en la nueva ubicación, éste regresaba a su posición original. Generalmente, el objeto regresa tan rápido que casi no podemos verlo moverse. En ésta lección, veremos un procedimiento para mover un objeto que siempre regresa a su lugar de origen, sin importar dónde intentemos colocarlo. Éste programa agrega otra interfaz al programa de la lección anterior e indica al objeto que está siendo arrastrado que debe restituir su ubicación original, sin importar en qué otro lugar sea colocado. La ubicación inicial será en el centro de la ventana. Observe que hemos agregado la interfaz "Runnable", la cual vamos a necesitar para que el cuadrado regrese automáticamente a su posición inicial. Éste es uno de los mayor conjuntos de interfaces posible. Es bastante raro que una Clase implemente 3 o más interfaces. Generalmente, ésta implementa dos interfaces, pero con más frecuencia, sólo implementa una. De cualquier manera, ésta es la nueva Referencia del objeto "Thread". Las variables "xhome" y "yhome" han sido agregadas para contener la posición inicial del objeto que vamos a arrastrar. Aquí tenemos un elemento que tal vez no hemos visto antes: dos operadores de asignaciones en la misma línea de código. Podemos tener tantos operadores de asignación como queramos en la misma línea. El valor ubicado más hacia la derecha se calcula y se almacena en la ubicación de la izquierda. Luego, ése mismo valor se almacena de nuevo en la otra ubicación más alejada hacia la izquierda. Éste ejemplo sólo tiene dos operadores de asignación, pero sin importar cuántos sean, todos terminan con el mismo valor. Éste no es un applet, por lo tanto, no tenemos los Métodos "start" y "stop", así que el objeto "Thread" se crea y se inicializa en el Constructor. El Método "run" es igual a los otros Métodos que hemos visto; éste entra en un ciclo con el Método "sleep" y realiza un llamado al Método "repaint" a intervalos regulares. Los llamados al Método "repaint" significan que habrá unos llamados al Método "update" a intervalos regulares. Si el tamaño de la ventana ha cambiado, se recupera un nuevo objeto "Rectangle"… y se determina nuevamente la ubicación inicial en los ejes "x" y "y". Por supuesto, se crea un objeto "Image" para el nuevo tamaño. Ésta verificación se realiza para determinar si el cuadrado ha sido arrastrado correctamente. De ser así, éste programa no modifica la ubicación. Sin embargo, si el cuadrado no es arrastrado y no está en su posición inicial, el programa lo acerca 1 píxel a ésta posición. El cuadrado ya no cambia de color al ser arrastrado. Estos son todos los elementos nuevos en éste programa. El Método "update" ya se encontraba aquí, así que sería casi trivial hacerlo de tipo "Runnable" y agregar el objeto "Thread" para la animación. Si el cuadrado se arrastra fuera del centro de la ventana, éste vuelve lentamente a su lugar. Si éste es llevado completamente fuera de la ventana, regresará nuevamente a la ventana y a su posición inicial. Al cambiar la forma de la ventana, se modifica su centro y la posición inicial, así que el cuadrado se dirige a ésta sin importar cuál ha sido su ubicación anterior. ] sin importar cuál ha sido su ubicación anterior.
Tutorial Information
| Course: | Java: Introduction to Java Programming (Español) |
| Author: | Arthur Griffith |
| SKU: | 33644 |
| ISBN: | 1-932808-86-8 |
| Release Date: | 2005-09-22 |
| Duration: | 8.5 hrs / 92 lessons |
| Captions: | Available on CD and Online University |
| Compatibility: |
Vista/XP/2000, OS X, Linux QuickTime 7, Flash 8 |
VTC Sign up & Benefits
- Unlimited Access
- 98,729 Video Tutorials (23,265 free)
- Video Available as Flash or QuickTime
- Over 1026 Courses
- $30 for One Month Access
- Multi-User Discounts Available
United States 