Select a radiobutton.Calculate derivation or integration.

조회 수: 1 (최근 30일)
oner
oner 2012년 12월 6일
I did a guide.it can calculate function. Than function is written by user in an edit text.My gui shows it at second edit text. problem is this. My gui has two radio button(derivation and integration). I want when user select one of them my program calculate function.if user select integration my program solves integration of function, if user select derivation my progtam solves derivation of function. What i can do ? My progtam :
% --- Executes when selected object is changed in uipanel1. function uipanel1_SelectionChangeFcn(hObject, eventdata, handles)
if(hObject == handles.radiobutton_derivation)
elseif(hObject == handles.radiobutton_integration)
end
% Update handles structure guidata(hObject, handles);
% hObject handle to the selected object in uipanel1 % eventdata structure with the following fields (see UIBUTTONGROUP) % EventName: string 'SelectionChanged' (read only) % OldValue: handle of the previously selected object or empty if none was selected % NewValue: handle of the currently selected object % handles structure with handles and user data (see GUIDATA)
What must i write in if and elseif ??
Thank you for answer.

채택된 답변

Matt Fig
Matt Fig 2012년 12월 7일
편집: Matt Fig 2012년 12월 7일
If you put the code in SelectionChangeFcn, then the integral or derivative will be computed as soon as the user changes radio buttons. Is that really what you want?
If not, I would put the code in the callback where the calculation is made. For example in a pushbutton callback. Here is where you find the selectedobject property and use that in the IF statement.
a = get(handles.edit1,'String');
H = handles;
if H.radiobutton_derivation==get(H.uipanel1,'selectedob')
b = diff(sym(a));
else
b = int(sym(a));
end
set(handles.edit2, 'String', char(b));
  댓글 수: 6
Matt Fig
Matt Fig 2012년 12월 7일
편집: Matt Fig 2012년 12월 7일
Here is a simple example that uses a toggle button to do the same thing. Instead of asking for the state of the toggle button, you are asking which is the selected object...
function [] = gui_calculus()
% How to use symbolics and strings.
S.fh = figure('name','Calculus',...
'menubar','none',...
'numbert','off',...
'resize','off',...
'pos',[100 100 300 150]);
S.tg = uicontrol('Style','toggle',...
'Units','pix',...
'Position',[10 10 130 130],...
'callback',@tg_callb,...
'fontsize',13,...
'fontweight','bold',...
'String','Integral');
S.ed = uicontrol('Style','edit',...
'Units','pix',...
'Position',[150 100 130 30],...
'String','x^2 + sin(x)');
S.pb = uicontrol('Style','push',...
'Units','pix',...
'Position',[150 10 130 80],...
'CallBack',@pb_callb,...
'String','Calculate');
movegui('center')
guidata(S.fh,S)
uicontrol(S.ed) % put the focus on func box.
function [] = pb_callb(varargin)
% Callback for the push button
S = guidata(gcbf); % Get the structure.
a = get(S.ed,'String');
if get(S.tg,'value') % Find state of the toggle
b = diff(sym(a));
else
b = int(sym(a));
end
set(S.ed, 'String', char(b));
guidata(S.fh,S)
function [] = tg_callb(varargin)
% Callback for the toggle.
S = guidata(gcbf); % Get the structure.
if get(S.tg,'value')
set(S.tg,'string','Derivative')
else
set(S.tg,'string','Integral')
end
oner
oner 2012년 12월 7일
İt is perfect example. I examined it. I understand my problem. thank you so . i did it :)

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Labels and Annotations에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by