none
Redimensionar los controles automáticamente

    Pregunta

  • Hola amigos

    Programo en vb.net

    Tengo un registro factura, y me gustaría Redimensionar los controles automáticamente, cuando maximice la venta, es decir sin importar la resolución de la pantalla, cuando maximice el formulario, Redimensionar los controles automáticamente.

    Cuento con ustedes. 

    Saludos cordiales

    domingo, 23 de abril de 2017 15:49

Respuestas

  • No hay una receta mágica que te lo haga todo "de golpe". Tienes que combinar inteligentemente varias técnicas, que te enumero a continuación, con las cuales le indicas a cada control qué es lo que quieres que haga cuando cambie el tamaño del form:

    La propiedad Anchor de cada control te permite "pegarlo" a los bordes que quieras. Si lo pegas a dos bordes opuestos, el control se "estira" cuando los bordes se separan.

    La propiedad Dock te permite aparcar un control dentro de su contenedor, pegándolo  a uno de los bordes o haciendo que se expanda hasta ocupar todo el espacio disponible. Poniéndoles por orden el Dock a varios controles, se consigue que se apilen y se ajusten a las dimensiones de su contenedor. Dock es incompatible con Anchor.

    Los contenedores de tipo FlowLayoutPanel y TableLayoutPanel te permiten definir una zona que "fluya" como una página web, o una Tabla de controles. Se pueden anidar uno dentro de otro, y en cada casilla puedes poner controles que a su vez tengan el Anchor o el Dock para reubicarse dentro de la tabla.

    Finalmente, el evento Resize te permite hacer cálculos en función del nuevo tamaño del form, y en base a esos cálculos modificar las propiedades Left, Top, Width, Height, Font, etc., de cada uno de los controles que no hayas podido reubicar mediante los mecanismos descritos más arriba.

    • Propuesto como respuesta Joyce_ACModerator lunes, 24 de abril de 2017 15:59
    • Marcado como respuesta EliannyRD lunes, 24 de abril de 2017 23:16
    domingo, 23 de abril de 2017 15:59

Todas las respuestas

  • No hay una receta mágica que te lo haga todo "de golpe". Tienes que combinar inteligentemente varias técnicas, que te enumero a continuación, con las cuales le indicas a cada control qué es lo que quieres que haga cuando cambie el tamaño del form:

    La propiedad Anchor de cada control te permite "pegarlo" a los bordes que quieras. Si lo pegas a dos bordes opuestos, el control se "estira" cuando los bordes se separan.

    La propiedad Dock te permite aparcar un control dentro de su contenedor, pegándolo  a uno de los bordes o haciendo que se expanda hasta ocupar todo el espacio disponible. Poniéndoles por orden el Dock a varios controles, se consigue que se apilen y se ajusten a las dimensiones de su contenedor. Dock es incompatible con Anchor.

    Los contenedores de tipo FlowLayoutPanel y TableLayoutPanel te permiten definir una zona que "fluya" como una página web, o una Tabla de controles. Se pueden anidar uno dentro de otro, y en cada casilla puedes poner controles que a su vez tengan el Anchor o el Dock para reubicarse dentro de la tabla.

    Finalmente, el evento Resize te permite hacer cálculos en función del nuevo tamaño del form, y en base a esos cálculos modificar las propiedades Left, Top, Width, Height, Font, etc., de cada uno de los controles que no hayas podido reubicar mediante los mecanismos descritos más arriba.

    • Propuesto como respuesta Joyce_ACModerator lunes, 24 de abril de 2017 15:59
    • Marcado como respuesta EliannyRD lunes, 24 de abril de 2017 23:16
    domingo, 23 de abril de 2017 15:59
  • Gracias por contestar 
    lunes, 24 de abril de 2017 23:16