Ayuda - Resaltar zonas

lechusg
20 de Enero del 2005
Tengo una aplicación que trabaja con diferentes mapas de ciudades, lo que quiero hacer es, en mapa tenerlo dividido por zonas y al pasar el mouse que cada zona resalte.
No se si en Visual se pueda hacer o deba usar otra herramienta.
Desde ya muchas gracias

cesarg_ad
20 de Enero del 2005
En visual fox es muy difícil, tal vez te pueda resultar el siguiente artificio.
1. Creas un bmp con las zonas, pero cada zona con un color ligeramente diferente, imperceptible para el usuario, si es que quieres un mismo color para todas las zonas, o puedes ponerle un color diferente para cada zona. La cosa es que cada zona tenga su propio color RGB.
2. Cargas la imagen en un formulario.
3. Cuando el usuario pase el Mouse por la zona (MouseMove) tienes que determinar cual es el color RGB de dicha zona, por lo tanto puedes determinar la zona.
4. Para resaltar la zona tendrías que crear varios archivos gif que soporta transparencia, uno por zona, y luego mostrarlo según la zona en la que esté.
Digo no.

lechusg
20 de Enero del 2005
Desde ya gracias por tu ayuda.
Es muy interesante tu idea, me la voy a poner a implementar. Si podes decirme como obtengo el RGB de una posición determinada y como creo el gif con transparencia te lo agradecería; igualmente ya me pongo a buscar en la web. Gracias

cesarg_ad
20 de Enero del 2005
Para determinar el color de cualquier objeto de un formulario tienes que utilizar el método Point del formulario. Point(X,Y), claro te lo devuelve en un entero que tienes que convertirlo a hexadecimal y descomponerlo en tres colores:
valor mod 256 para azul
(valor div 256) mod 256 para verde
valor div 256*256 para rojo
o algo así
Claro, tienes que tener en cuenta las coordenadas del del control Image que estés ejecutando para determinar las coordenadas.

Sobre el archivo gif puede partir por la imagen BMP que se crea en el inicio y guardarlo como gif, luego establecer el color de transparencia y rellenar con ese color el área, para que sólo quede el marco.
Todos los editores de archivos tipo bitmap pueden hacer eso.
Corel PhotoPaint, Adobe Photoshop o uno más sencillo: Paint Shop Pro