// CAPTURA DEL EVENTO "RATON" PARA EL ARRASTRE DE OBJETOS
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.event.MouseEvent;
public class EventoRaton extends JFrame
{
AreaGrafica AG = null;
public static void main(String R[]) { new EventoRaton(); }
public EventoRaton()
{
super("Evento Raton");
setSize(500, 500);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
AG = new AreaGrafica(50, 50);
add(AG); AG.setBounds(5, 5, 450, 450);
}
}
class AreaGrafica extends JPanel implements MouseMotionListener
{
int X = 0, Y = 0;
public AreaGrafica(int X, int Y)
{
this.X = X; this.Y = Y;
addMouseMotionListener(this);
}
public void paint(Graphics G)
{
G.setColor(Color.yellow); G.fillRect(0, 0, 500,500);
G.setColor(Color.blue);
G.fillOval(X, Y, 100, 100);
}
public void mouseClicked(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mousePressed(MouseEvent e) { }
public void mouseReleased(MouseEvent e) {}
public void mouseDragged(MouseEvent e)
{
if
( e.getX() > X && e.getX() < X+90 &&
e.getY() > Y && e.getY() < Y+90
)
{ X = e.getX(); Y = e.getY();
System.out.println("OK______");
repaint();
}
}
public void mouseMoved(MouseEvent e)
{
X = e.getX(); Y = e.getY();
System.out.println("X = " + X + "\t Y = " + Y);
}
}