Pessoal, estou tentando desenhar um retâgulo toda vez que eu clicar qualquer um dos botões do mouse.
Tentei de duas formas(cor verde), mas não tive sucesso. Se tiver alguém que possa me ajudar eu agradeço.
Obrigada.
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class Questao2 extends Applet
implements MouseListener, MouseMotionListener {
int clickx, clicky;
int pressx, pressy;
int releasex, releasey;
int enterx, entery;
int exitx, exity;
int dragx, dragy;
int movex, movey;
int mousebutton;
public void init() {
addMouseListener(this);
addMouseMotionListener(this);
}
public void paint(Graphics g) {
g.drawString("Mouse clicked " + mousebutton + " at " + clickx + "," + clicky, 10, 10);
g.drawString("Mouse entered at " + enterx + "," + entery, 10, 25);
g.drawString("Mouse exited at " + exitx + "," + exity, 10, 40);
g.drawString("Mouse pressed " + mousebutton + " at " + pressx + "," + pressy, 10, 55);
g.drawString("Mouse released " + mousebutton + " at " + releasex + "," + releasey, 10, 70);
g.drawString("Mouse dragged at " + dragx + "," + dragy, 10, 85);
g.drawString("Mouse moved at " + movex + "," + movey, 10, 100);
}
private void checkButton(MouseEvent e) {
switch(e.getButton()) {
case MouseEvent.BUTTON1:
mousebutton = 1;
break;
case MouseEvent.BUTTON2:
mousebutton = 2;
break;
case MouseEvent.BUTTON3:
mousebutton = 3;
break;
default:
mousebutton = 0;
}
}
/*private void draw(Graphics g,MouseEvent e)
{
switch(mousebutton)
{
case 1:
case 2:
case 3:
g.setColor(Color.RED);
g.fillRect(e.getX(),e.getY(),4,4);
}
}*/
public void mouseClicked(MouseEvent e) {
clickx = e.getX();
clicky = e.getY();
checkButton(e);
repaint();
}
public void mouseEntered(MouseEvent e) {
enterx = e.getX();
entery = e.getY();
repaint();
}
public void mouseExited(MouseEvent e) {
exitx = e.getX();
exity = e.getY();
repaint();
}
public void mousePressed(MouseEvent e/*,Graphics g*/) {
pressx = e.getX();
pressy = e.getY();
checkButton(e);
repaint();
/*switch(e.getButton())
{
case MouseEvent.BUTTON1:
case MouseEvent.BUTTON2:
case MouseEvent.BUTTON3:
g.setColor(Color.RED);
g.fillRect(e.getX(),e.getY(),4,4);
repaint();
break;
}*/
}
public void mouseReleased(MouseEvent e) {
releasex = e.getX();
releasey = e.getY();
checkButton(e);
repaint();
}
public void mouseDragged(MouseEvent e) {
dragx = e.getX();
dragy = e.getY();
repaint();
}
public void mouseMoved(MouseEvent e) {
movex = e.getX();
movey = e.getY();
repaint();
}
}