How do you output App data to a calling function?

2 visualizaciones (últimos 30 días)
Chris Nemecek
Chris Nemecek el 20 de Jul. de 2018
Comentada: Chris Nemecek el 31 de Jul. de 2018
I have a function/script that calls an instance of an App I created in AppDesigner. How do I get the App to return data to the function/script upon closing the App?
hApp = selectFiles_v0000; % call to open App within the function/script
importInfo(hApp,trajectoryDirectory,'.nc') % necessary to import function data into the App since I only have Matlab 2016b and do not have the ability to have a StartUpFcn with inputs
uiwait(hApp.selectFiles);
% need to have data from the App available in the function/script at this point

Respuesta aceptada

crixstox
crixstox el 23 de Jul. de 2018
I had a similar probelm and made the following work around.
  1. In the calling function replace 'uiwait(hApp.selectFiles)' with 'uiwait(hApp.UIFigure)'
  2. Generate a button called 'close' in the app and add a callback involving uiresume(app.UIFigure).
  3. Read out the needed data in the calling function (usually with hApp.<name>.Value).
  4. If the app interface is no longer needed call additionally 'hApp.delete'.
I hope this helps.
  1 comentario
Chris Nemecek
Chris Nemecek el 31 de Jul. de 2018
That would seem to work. However, I ended up just using setappdata in the App and getappdata in the calling function.
In the App:
setappdata(0,'var1',var1)
In the calling function:
var1 = getappdata(0,'var1)

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Develop Apps Using App Designer en Help Center y File Exchange.

Productos


Versión

R2016b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by