GRACIAS DE ANTEMANO

| |||
Hice algo parecido en un prog. que muestra un mapa mucho mayor que la pantalla. En realidad no le puse barras, sino que lo muevo con las teclas de flecha o arrimando el ratón a un borde. El tema es hacer dos PictureBox, uno del tamaño de la pantalla (llamémoslo Pic1), y el otro dentro de él (Pic2). A Pic2 se le dá por código un tamaño mucho mayor, según lo deseado. Parece una incongruencia darle al contenido un tamaño mayor que el contenedor, pero no hay problema en esto, solamente se verá la parte que permita Pic1. Luego, ya sea con tus barras o mis teclas, se hace variar el left y/o el top de Pic2 para que se desplace. Tené en cuenta que en ambos tendrás que trabajar con valores negativos. |
| |||
Hacé el Pic1 un poco más chico que el form, de forma que a la derecha y abajo te quede lugar para tus barras. A la propiedad Pic2.Left la hacés depender del value de la barra de abajo, y a la Top del value de la barra de la derecha. Tendrás que hacer que el Max de cada barra tenga una relación con el tamaño del Pic2 menos el de Pic1, en el sentido (hor. o vert.) que corresponda, eso podés calcularlo o ir probando, pero siempre acordate que para Pic2 ambos valores serán negativos. |
| ||||
Mamon: Puedes hacerlo también con la api de Windows para crear ScrollBars para tu formulario, y subclassing para controlar los scrolls. El siguiente código, aunque podría parecer un poco complicado, lo he comentado lo suficiente, para evitar confusiones. Y para que funcione con un formulario que tengas ya hecho, básicamente tendrás que copiar y pegar. Podría resultar más fácil de usar haciendo una clase a manera de wrapper, pero no tuve mucho tiempo para eso. Había usado ya en otro post un código similar, donde querían agregar soporte para MouseWheel a un FlexGrid, y entonces como ahora, comento que el código para subclassing es de un programador cuyo nombre es Paul Caton. Por si te interesa y quieres investigar más al respecto. El resto del código, es tán solo para crear los ScrollBars, soporte para MouseWheel, el menú contextual de los scrolls y demás características del scroll. Este es el código: http://www.ag-info.com/FormScroll.zip Espero que te pueda servir. Saludos. Última edición por Beakdan; 13/12/2004 a las 07:42 |