how to save variable from class of GUI to workspace?

조회 수: 2 (최근 30일)
sandy
sandy 2014년 6월 6일
댓글: Ben11 2014년 6월 17일
below here is in GUI,where dial() is a class which i used for created a knob in GUI,i need to save Value in dial() class to workspace ,and when i change the knob in GUI,variable VALUE will change,that should be updated to workspace variable.i need help here
snap = dial('refVal',0,...
'refOrientation',255*pi/180,...
'valRangePerRotation',5, ...
'Min',1, ...
'Max',4,...
'Value',1,...
'doSnap',1,...
'Position',thisPos,...
'dialRadius',0.35,...
'tickRadius',0.45,...
'tickLabelRadius',0.45,...
'HorizontalAlignment','left',...
'Tag','snapDial', ...
'tickVals', [1 2 3 4],...
'tickStrs',{'one' 'two' 'three' 'four'});

답변 (2개)

Image Analyst
Image Analyst 2014년 6월 9일

Ben11
Ben11 2014년 6월 6일
편집: Ben11 2014년 6월 6일
Maybe you could use setappdata(...) in your GUI to store dial() and then use getappdata(...) to retrieve it in the workspace? I have never used it with classes but it could work.
For example, in your GUI you could write:
setappdata(0,'Name of your variable',variable); %where variable would be dial() and the name is arbitrary.
% Update handles structure;
guidata(hObject,handles);
Then in the workspace:
VariableInWorkspace = getappdata(0,'Name of your variable');%where 'Name of your variable' is the same as that using setappdata in the GUI.
  댓글 수: 3
Ben11
Ben11 2014년 6월 9일
You can put setappdata in the opening function of your GUI as well and also at the beginning of your function callbacks if you need to use information from dial() in them.
You can use the line (VariableInWorkspace = getappdata(0,...)) I wrote in the above answer directly in the workspace and it should work. If you call external scripts you would also need to write getappdata() at the beginning and setappdata() at the end to update your variables.
Ben11
Ben11 2014년 6월 17일
So...did it work?

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

카테고리

Help CenterFile Exchange에서 App Building에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by