Tengo la siguiente situación:
una serie de puntos (creador mediante un ciclo), y quiero que al acercarme a alguno de ellos se active, ilumine, marque, lo que sea.
En el siguiente dibujo muestro lo que quiero aproximadamente:
(http://www.geocities.com/patricio_barros/Dibujo00.jpg)
bueno, y si me acerco a otro punto:
(http://www.geocities.com/patricio_barros/Dibujo01.jpg)
Los puntos, sólo están dibujados, se supone que están dispersos por toda la ventana, así que no sé si deba guardarlos.... quise hacer algo como (suponiendo que el primer punto está en X:100, Y:100):
si mouse.x>=51 y mouse.x<=149 entonces
si mouse.y>=51 y mouse.y<=149 entonces
dibujar_circulo(100,100)
fin si
sin si
...
pero son muchos los puntos... <_< alguien que me ayude por favor. Ah!, si puede ser en VB el ejemplo, mejor :P
Bueno, te pego una forma fácil de obtener las coordenadas mientras mueves el ratón:
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Debug.Print "x: " & X & " - y: " & Y '(para ver haciendo debug si salen bien)
'aplicamos tu código
if ((X>=51) and (X<=149)) then
if ((Y>=51) and (Y<=149)) then
dibujar_circulo(100,100)'Esto como quieras
end if
end if
End Sub
en VB express se hace casi, casi igual, es que no tenía instalado el VB6 para comprobar lo de arriba
aunque veo mejor guardar los centros de los puntos (un simple array doble) y comprobarlos todos con una pequeña tolerancia (más o menos el cuadrado que has puesto): de x-2 <-> x+2 / y -2 <-> y+2 y dibujar un círculo cuando te acerques a ese punto, y si te sales borrarlo