El applet TimingIsEverything utiliza un API desfasado. Primero utiliza el viejo mecanismo de manejo de eventos. Segundo utiliza el m�todo size que ha sido eliminado en el JDK 1.1 en fabor del nuevo m�todo getSize.
Hemos escrito una nueva versi�n del ejemplo TimingIsEverything que toma ventana del nuevo sistema de manejo de eventos y utilizar el nuevo m�todo getSize. Aqu� tienes el nuevo applet en acci�n.
Aqu� tienes el c�digo fuente de la versi�n 1.1 del applet TimingIsEverything.
import java.awt.Graphics;
import java.awt.Dimension;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class TimingIsEverything1_1 extends java.applet.Applet {
public long firstClickTime = 0;
public String displayStr;
public void init() {
displayStr = "Double Click Me";
addMouseListener(new MyAdapter());
}
public void paint(Graphics g) {
g.drawRect(0, 0, getSize().width-1, getSize().height-1);
g.drawString(displayStr, 40, 30);
}
class MyAdapter extends MouseAdapter {
public void mouseClicked(MouseEvent evt) {
long clickTime = System.currentTimeMillis();
long clickInterval = clickTime - firstClickTime;
if (clickInterval < 200) {
displayStr = "Double Click!! (Interval = " + clickInterval + ")";
firstClickTime = 0;
} else {
displayStr = "Single Click!!";
firstClickTime = clickTime;
}
repaint();
}
}
}
Para ver m�s detalles sobre estos y otros cambios en el AWT puedes ver la p�gina Cambios en el GUI: el AWT Crece.