How can I connect buttons in GUI?

Hello,
Well I have two button on GUI and I want to call/use the variables that I defined in the first button in the second one or vice versa, for example I defined in the first button that x=[3], y=[2] and run it, in the second button I wrote that z=x+y, but when I try to run it it says that x and y are undefined variables.
Any idea would be a great job for me.

 Accepted Answer

You need to attach your variables to the 'handles' structure in each callback. So, in one callback:
handles.x = 3;
handles.y = 2;
guidata( hObject, handles );
Don't forget that last line - it is what commits the handles structure back to the GUI, otherwise changes to it are local to the callback and will be lost.
Then in any other callback you can just do:
z = handles.x + handles.y;
Obviously if you also want z elsewhere put that on handles too with the guidata line also.

4 Comments

Thank you very much ;)
May I see your code please actually I have the same task and I am new to MATLAB GUI I couldnt fine the way to link two button in one GUI
Which part of the answer isn't clear.
Connecting data up in a Matlab GUI is covered in detail here
Actually Adam I want to link my data which is read from text file operates by two buttons one is by push button and second from checkbox so I wonder how to share that data between the two buttons and I am using GUIDE so not creating programatic GUI

Sign in to comment.

More Answers (0)

Categories

Find more on Interactive Control and Callbacks in Help Center and File Exchange

Asked:

on 10 Dec 2014

Commented:

on 26 Jul 2017

Community Treasure Hunt

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

Start Hunting!