MATLAB: Read an image from an axes and write it in a listbox Matlab

MATLABmatlab gui

I have a list box that return a list of images' names contained an a folder that i select. once i click on one of the names, i get the image displayed in an axes.
what i exactly want to do is when i click on a button called Select Image; the name of the image displayed in the axes will be written in a second list box that i have.
Does anyone have hints on how to do that?

Best Answer

Try this snippet in your Select Image callback.:
% Get image name
Selected = get(handles.lstImageList, 'value');
numberOfFilesSelected = length(Selected);
% If more than one is selected, bail out.
if numberOfFilesSelected > 1
return;
end
% If only one is selected, display it.
ListOfImageNames = get(handles.lstImageList, 'string');
baseImageFileName = char(ListOfImageNames(Selected));
fullImageFileName = fullfile(handles.imageFolder, baseImageFileName); % Prepend folder.
% Put into second listbox
set(handles.listbox2, 'String', {baseImageFileName});
I think it's better to just have that in the listbox callback though. Why force them to click on the image name in the listbox and then click a button rather than have it just display immediately?
Related Question