Pass variables/structure to .mlapp (GUI/App designer)

조회 수: 16 (최근 30일)
Ashishkumar Gupta
Ashishkumar Gupta 2023년 1월 8일
답변: chrisw23 2023년 2월 9일
Hello,
I want to run my matlab script (.m file) amd want to pass data to GUI/.mlapp from my .m file(matlab script) workspace. The data can be a variable/structure.
Also, I want GUI to also pass some data back to .m file.
Thanks !!!

채택된 답변

Cameron
Cameron 2023년 1월 8일
evalin and assignin are the functions that should help. For example, if you are running App Designer and you have a variable called MyVar you could use this to take the variable and send it to the workspace:
assignin('base','MyVar',MyVar)
%assignin('base',Workspace variable name,The variable)
  댓글 수: 2
Ashishkumar Gupta
Ashishkumar Gupta 2023년 1월 8일
편집: Ashishkumar Gupta 2023년 1월 8일
Unfortunately, it is not recommended by matlab to use evalin. Is there any alternative ways? @Cameron Thanks!!
Cameron
Cameron 2023년 1월 9일
As @Image Analyst said below, you can use the save and load functions. Those are generally more accepted.

댓글을 달려면 로그인하십시오.

추가 답변 (3개)

Image Analyst
Image Analyst 2023년 1월 9일
If you have a script that creates some data, you can use save in your script to save the variables, and use load to read them in in your .mlapp code.
See the FAQ for other ways:

Walter Roberson
Walter Roberson 2023년 1월 9일
App designer creates code that defines an object class the derives from handle.
At least in theory, you could modify the constructor to accept additional parameters. Or probably better would be adding methods that accepted the handle object and the additional data, and performed an action and returned appropriate values.
Remember though that if you want to get out the results after user interaction then you will need to arrange for the code to wait for interactions to finish before you can return. See uiwait and waitfor

chrisw23
chrisw23 2023년 2월 9일
Calling your mlapp application from your script returns the app handle with full access to all public objects
myAppHandle = myApp()
Observed properties are an option to establish an event structure for bidirectional communication.

카테고리

Help CenterFile Exchange에서 Develop Apps Using App Designer에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by