Diplay wav files in listbox GUI

1 view (last 30 days)
Hi, I need to make a listbox GUI that displays every wav files that I have in a folder. What I want is I just simply put the cursor in one of the wav files at the listbox and click a pushbutton to run my sound processing code. I have this function :
function wavlist_Callback(hObject, eventdata, handles)
function wavlist_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function tab1button_Callback(hObject, eventdata, handles)
Like this :
I've tried to put this code in my GUI code but I don't really know how to make it right :
allfiles = dir; %get files
allname = {allfiles(~[allfiles.isdir]).name}
Someone please help me...

Accepted Answer

Walter Roberson
Walter Roberson on 31 May 2016
set(handles.wavlist, 'String', allname);
and inside wavelist_Callback
wavnames = get(hObject, 'String');
choice = get(hObject, 'Value');
selected_file = wavnames{choice};
  9 Comments
Walter Roberson
Walter Roberson on 10 Jun 2016
Make sure you do not press the pushbutton before you have used the listbox to select an item. Or, alternately, make sure that you define handles.selected_file even before the listbox callback has ever been run.
arina octave
arina octave on 10 Jun 2016
argh my bad, thank you so much Walter. you've been a great help!

Sign in to comment.

More Answers (0)

Categories

Find more on Interactive Control and Callbacks in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!