Effacer les filtres
Effacer les filtres

How do you output App data to a calling function?

2 vues (au cours des 30 derniers jours)
Chris Nemecek
Chris Nemecek le 20 Juil 2018
Commenté : Chris Nemecek le 31 Juil 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

Réponse acceptée

crixstox
crixstox le 23 Juil 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 commentaire
Chris Nemecek
Chris Nemecek le 31 Juil 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)

Connectez-vous pour commenter.

Plus de réponses (0)

Produits


Version

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by