Ayuda con la implementación de programa en visual basic con un mapa creado con imágenes

Hola de nuevo. Si puedes volver a ayudarme te estaría doblemente agradecido, la primera vez me solucionaste el problema y te doy las gracias por ello.
Bueno, a lo que iva, pues resulta que estoy haciendo un programilla en Visual Basic en el que una de las partes es crear un mapa (a base de dibujitos en controles Image) pero tengo el pequeño problema de que el mapa puede llegar a ser más grande que el formulario donde lo presento, por lo que me gustaría saber como meterlo en algún lugar de manera que me salgan las barras de desplazamiento (si el mapa se hace demasiado grande)y pueda crearlo todo lo grande que yo quiera y así visualizar cualquier punto de dicho mapa con sólo mover las barras de desplazamiento. No se si me he explicado con claridad
Muchísimas gracias

1 respuesta

Respuesta
1
Lo que tu quieres, se puede hacer de la siguiente forma:
Necesitas poner el control Image dentro de otro control que te haga de contenedor, por ejemplo un Frame (al que puedes eliminar el borde y el caption para que no se aprecie)
EL control Image contiene la totalidad de la imagen. Si pones las propiedades Top y Left del picture iguales a cero, verás la parte superior izquierda de la imagen, pero si el Image es mayor que el Frame, estará recortada la parte inferior y la parte derecha porque el Image no se ve completo.
Sitúa entonces debajo y a la derecha del frame unos controles Hscrollbar y Vscrollbar que al moverlos, lo que hagan es modificar el valor de Top y Left del Imagede manera que tomen valores negativos. Esto hace que la esquina superior izquierda del Image se salga fuera del frame y no se vea, pero que se vea más imagen de la parte inferior derecha.
Para hacerlo bien hay que calcular los valores máximos y mínimos de las srcollbar para que la imagen se mueva lo justo, e incluso poner invisibles una u otra stcrollbar si no se necesitan, en función del tamaño del Image.
Yo lo he hecho algunas veces y funciona muy bien. Si tienes alguna duda, ya sabes.
Suerte:-)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas