Clear Filters
Clear Filters

How to pass a variable to a function in GUI?

1 view (last 30 days)
Hi,
Please see the graphs shown below.
In part A (the part which will execute when button is pressed), you can see that I am trying to load a .mat file. There is a variable called 'RGB' saved in this .mat file.
And in part B, I am also trying to use the same variable RGB without loading it again.However, the RGB from part A would not be passed to part B just like that.
I also tried in part A I wrote:
handles.RGB=RGB;
and in part B I wrote:
RGB= handles.RGB
But it didn't work. Could anyone help please?
  3 Comments
Stephen23
Stephen23 on 26 Feb 2018
Edited: Stephen23 on 26 Feb 2018
Rather than using the command syntax of load it is recommended to use the function syntax, and load into an output variable (which is a structure). This will make it more obvious that the data has been loaded into that callback's workspace only:
S = load('Picture.mat');
handles.RGB = S.RGB;
guidata(hObject, handles) % you forgot this!
Salad Box
Salad Box on 26 Feb 2018
Thank you both! After I posted this article, I did realize I missed
guidata(hObject, handles);
Thank you again!!!!!

Sign in to comment.

Accepted Answer

Adam
Adam on 26 Feb 2018
Personally I use guidata if I am creating a GUIDE UI, but there are various different approaches in that link

More Answers (0)

Categories

Find more on Migrate GUIDE Apps in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!