Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

Compartir datos dentro de apps de App Designer

Utilizar propiedades es la mejor forma de compartir datos dentro de una app, ya que las propiedades son accesibles a todas las funciones y callbacks de una app. Todos los componentes de la IU son propiedades, por lo que puede utilizar esta sintaxis para acceder a y actualizar componentes de la IU dentro de los callbacks:

app.Component.Property

Por ejemplo, estos comandos obtienen y establecen la propiedad Value de un indicador de aguja. En este caso, el nombre del indicador de aguja es PressureGauge.

x = app.PressureGauge.Value; % Get the gauge value
app.PressureGauge.Value = 50; % Set the gauge value to 50

Sin embargo, si quiere compartir un resultado intermedio o datos a los que tienen que acceder múltiples callbacks, defina una propiedad pública o privada para guardar los datos. Las propiedades públicas son accesibles tanto dentro como fuera de la app, mientras que las propiedades privadas solo son accesibles dentro de la app.

Definir una propiedad

Code View proporciona algunas formas distintas de crear una propiedad:

  • Amplíe el menú desplegable desde la mitad inferior del botón Property en la pestaña Editor. Seleccione Private Property o Public Property.

    Property button options.

  • Haga clic en la pestaña Properties en el Code Browser, amplíe la lista desplegable en el botón Plus y seleccione Private Property o Public Property.

    Properties tab in the Code Browser. The tab contains a search bar to find properties, and a plus button to add a new property.

Después de seleccionar una opción para crear una propiedad, App Designer añade una definición y un comentario a un bloque properties.

properties (Access = public)
    Property % Description
end

El bloque properties es editable, por lo que puede cambiar el nombre de la propiedad y editar el comentario para describirla. Por ejemplo, esta propiedad guarda un valor para el coste promedio:

properties (Access = public)
    X % Average cost
end

Si el código necesita acceder a un valor de propiedad al iniciar la app, puede inicializar su valor en el bloque properties o en el callback startupFcn.

properties (Access = public)
    X = 5; % Average cost
end

Para limitar los tipos de valores que una propiedad puede almacenar, asocie un tipo de datos con la propiedad en la definición de la propiedad. Por ejemplo, este código necesita que los valores asignados a X sean de un tipo compatible con double y que los valores asignados se almacenen como double.

properties (Access = public)
    X double % Average cost
end

Acceder a una propiedad

Cuando defina una propiedad, puede acceder y establecer su valor en cualquier parte del código de su app con la sintaxis app.PropertyName.

y = app.X  % Get the value of X
app.X = 5; % Set the value of X

Ejemplo: Compartir datos de gráficas y una selección de la lista desplegable

Esta app muestra cómo compartir datos en una propiedad privada y una lista desplegable. Tiene una propiedad privada llamada Z que guarda datos de gráficas. La función de callback para el campo de edición actualiza Z cuando el usuario cambia el tamaño de la muestra. La función de callback para el botón Update Plot obtiene el valor de Z y la selección del mapa de color para actualizar la gráfica.

Temas relacionados