workspace & GUI

Hi, I have a some data in the workspace which is data1 = <4x4x13 int32).
If I want to clear this from the workspace, I can do so by typing "clear data1" in the command window. However, when I write this into a GUI pushbutton call back, it doesn't do anything.
clear data1;
delete(get(handles.axes1,'children')); % clear axes 1
set(handles.uitable1, 'Data', []); % clears uitable
everything else works (uitable, axes1) but not the workspace!

 Risposta accettata

Sean de Wolski
Sean de Wolski il 17 Mag 2011

0 voti

That's because it's calling it in the workspace of the callback function, not the base work space. This is what you want:
evalin('base','clear data1');

3 Commenti

Jason
Jason il 17 Mag 2011
Thanks, does the same apply for reassigning data in the workspace to another name using the callback.
last = data1
does not work.
Jason
Jason il 17 Mag 2011
Done it:
evalin('base','Last = data1')
Sean de Wolski
Sean de Wolski il 17 Mag 2011
Yes. Use assignin to accomplish that task.
Beware however, this can all be dangerous as you may overwrite/clear something unintentionally.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by