MATLAB: How to Add selected values of Listbox in MATLAB GUI

listboxMATLAB

function listbox1_Callback(hObject, eventdata, handles)
contents= cellstr(get(hObject,'String'));
listchoice=contents(get(hObject,'Value'));
if(strcmp(listchoice,'a'))
lis1=10;
elseif(strcmp(listchoice,'b'))
lis1=20;
elseif(strcmp(listchoice,'c'))
lis1=30;
elseif(strcmp(listchoice,'d'))
lis1=40;
elseif(strcmp(listchoice,'e'))
lis1=50;
end
assignin('base','lis1',lis1);
i have created a listbox with five options with their respected values and when i select more than 1 option , I want the result to be added in the respective listbox.

Best Answer

This is not the best way but a working solution!
function listbox1_Callback(hObject, eventdata, handles)
contents= cellstr(get(hObject,'String'));
lischoice=contents(get(hObject,'Value'));
if numel(lischoice)>=2
choice1 = lischoice(1);
choice2 = lischoice(2);
if (strcmp(choice1,'a'))
l1=0.10;
elseif (strcmp(choice1,'b'))
l1=0.20;
elseif (strcmp(choice1,'c'))
l1=0.30;
end
if (strcmp(choice2,'a'))
l2=0.10;
elseif (strcmp(choice2,'b'))
l2=0.20;
elseif (strcmp(choice2,'c'))
l2=0.30;
end
l_value = l1 + l2;
else
if (strcmp(lischoice,'a'))
l_value = 0.10;
elseif (strcmp(lischoice,'b'))
l_value = 0.20;
elseif (strcmp(lischoice,'c'))
l_value = 0.30;
end
end
assignin('base','l_value',l_value);