¿Pero por qué no quieres utilizar hilos?, bueno de todos modos he modificado el código de @crack18 para que funcione sin hilos:
public class AyudaForo
extends JPanel{
private static int xinicial = 0, yinicial = 0;
private static int xfinal = 0, yfinal = 0;
private static boolean terminar = false;
private static final byte tamanoPelota=30;
public static AyudaForo animacion = new AyudaForo(0,0,200,200);
public AyudaForo(int xinicial, int yinicial, int xfinal, int yfinal) {
this.xinicial = xinicial;
this.yinicial = yinicial;
this.xfinal = xfinal;
this.yfinal = yfinal;
}
super.paint(g);
pintarPunto(g, xinicial, yinicial);
}
public void pintarPunto
(Graphics g2,
int x,
int y
) { g2.fillOval(x, y, tamanoPelota, tamanoPelota);
}
public static void run() {
while (!terminar) {
xinicial++;
yinicial++;
if (xinicial == xfinal && yinicial == yfinal) {
break;
}
try {
ex.printStackTrace();
}
animacion.repaint();
}
}
ventana.setBounds(0, 0, 500, 500);
ventana.add(animacion);
ventana.setVisible(true);
ventana.
setDefaultCloseOperation(JFrame.
EXIT_ON_CLOSE); run();
System.
out.
println("Hilo terminado");
}
}
en el método
run hay dos variables xinicial,yinicial y son las coordenadas del punto, o sea que dentro de ese método debes implementar tu algoritmo para dibujar.
public static void run() {
//Aquí utiliza tu algoritmo para ir modificando las variables que te había mencionado
try {
ex.printStackTrace();
}
animacion.repaint();
}
debes llamar a repaint cada vez que hayas desplazado el punto, en el ejemplo sólo se llama una vez.