Main Content

Administrar aplicaciones de tamaño variable en App Designer

Las aplicaciones que se crean en App Designer son redimensionables de forma predeterminada. Los componentes se reposicionan y redimensionan automáticamente a medida que el usuario cambia el tamaño de la ventana en tiempo de ejecución. Este comportamiento de cambio de tamaño automático está controlado por la propiedad.AutoResizeChildren De forma predeterminada, esta propiedad está habilitada para la figura y los contenedores secundarios, como paneles y pestañas.

Cuando la propiedad está habilitada para un contenedor, administra el tamaño y la posición de solo los elementos secundarios inmediatos en el contenedor.AutoResizeChildrenMATLAB® Los componentes de los contenedores anidados se administran mediante la propiedad de su elemento primario inmediato.AutoResizeChildren Para asegurarse de que la alineación de los componentes en relación con el otro (como una agrupación de botones) se conserva cuando se cambia el tamaño de la aplicación, el elemento primario de la agrupación de componentes en un panel, en lugar de directamente a la figura.

Redimensionar componentes con unidades de posición normalizadas

Cuando un componente secundario de un contenedor de tamaño variable tiene unidades de posición normalizadas, ciertas propiedades del componente se ven afectadas después de cambiar el tamaño del contenedor primario. Por ejemplo,

Si los ejes o los gráficos utilizan un valor de para la propiedad y están parados en un contenedor con la propiedad establecida en, a continuación,'normalized'UnitsAutoResizeChildren'on'

  • El valor de la propiedad para los ejes o el gráfico cambiará cuando se cambie el tamaño de la aplicación.OuterPosition

  • Los ejes o el gráfico no se encogerá más pequeño que un tamaño mínimo cuando se redimensiona la aplicación.

Si desea evitar cualquiera de estos comportamientos, establezca la propiedad del contenedor en.AutoResizeChildren'off'

Desactivación del cambio de tamaño automático

Puede deshabilitar el comportamiento de cambio de tamaño automático de un contenedor deshabilitando la propiedad. Para deshabilitar la propiedad en el diseñador de aplicaciones, seleccione el contenedor y desactive la casilla de verificación en la ficha de la.AutoResizeChildrenInspectorComponent Browser

Siempre que active o desactive esta casilla, el diseñador de aplicaciones establecerá la propiedad en el mismo valor en todos sus contenedores secundarios. Para establecer la propiedad de un contenedor secundario en un valor diferente, establezca el valor para el contenedor secundario después de establecer el valor para el elemento primario.AutoResizeChildren

También puede establecer la propiedad mediante programación estableciendo el valor en o.'on''off' Cuando se establece la propiedad mediante programación, el valor no cambia para los contenedores secundarios.

app.UIFigure.AutoResizeChildren = 'off';

Para deshabilitar completamente el cambio de tamaño, establezca la propiedad de la figura en.Resize'off'

Personalización del comportamiento de cambio de tamaño mediante una devoluciónSizeChangedFcn

Si el comportamiento de cambio de tamaño automático no es el comportamiento que desea, deshabilite la propiedad y escriba una devolución de llamada para el contenedor.AutoResizeChildrenSizeChangedFcn En esta devolución de llamada, escribe código para ajustar la propiedad de los componentes secundarios.Position La devolución de llamada se ejecuta cuando cambia el tamaño del contenedor.

Por ejemplo, un puede contener código que mantiene el ancho de un campo de edición en un cuarto del ancho de la figura.SizeChangedFcn

figwidth = app.UIFigure.Position(3); app.EditField.Position(3) = .25 * figwidth;

Nota

A partir de R2017a, debe deshabilitar la propiedad para permitir que se ejecute la devolución de llamada.AutoResizeChildrenSizeChangedFcn Para obtener más información, consulte.App Designer: Disable automatic resize behavior when writing SizeChangedFcn callbacks

Consulte también

Temas relacionados