How can I pass a variable between a m-file and another m-file that runs a gui?

29 visualizzazioni (ultimi 30 giorni)
Hello,
I'm trying to pass a variable between one m-file and another m-file that initiates gui.
More specifically:
I have one m-file (mfile1) that is concerned with the initiation of gui, however, some calculations are made in other m-file(mfile2).
I would like to pass some variables in the mfile2 to the mfile1.
Is it possible?
Thank you in advance.

Risposta accettata

Adam Danz
Adam Danz il 22 Set 2020
Modificato: Adam Danz il 23 Set 2020
M files can contain scripts or functions but variables can only be passed to functions so the m-file must be written as a function [see Scripts vs Functions and Create Function in Files].
For example,
mfile2
function [output] = mfile2(input)
% add 1 to the input and pass the result to mfile2.
y = input + 1;
% Send y to mfile1 and get the result
% mfile1 divides y by 2 to z equals (input+1)/2
z = mfile1(y);
end
mfile1
function [output] = mfile1(input)
% divide the input by two
output = input/2;
end
All variables needed in a function must either be passed into the function as inputs or defined within the function. If your functions interact with your GUI, pass the handle structure into the function.

Più risposte (0)

Categorie

Scopri di più su Migrate GUIDE Apps in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by