MATLAB GUI: I want to display an error message if user selects the wrong file type
3 views (last 30 days)
Show older comments
MATLAB GUI HELP:
I have an option for users to open wav files (using uigetfile). However, this doesn't stop them opening all file types and when they do this it breaks my GUI.
How can I get an error message to occur when they don't open a wav file?
Many thanks. I really appreciate your help.
Best regards
0 Comments
Accepted Answer
Image Analyst
on 23 Nov 2013
Try this fairly robust code:
numberOfTries = 0;
while numberOfTries < 20 % Failsafe
% Get the name of the file that the user wants to use.
startingFolder = pwd; % Whatever you want.
defaultFileName = fullfile(startingFolder, '*.*');
[baseFileName, folder] = uigetfile(defaultFileName, 'Select a file');
if baseFileName == 0
% User clicked the Cancel button.
break;
end
fullFileName = fullfile(folder, baseFileName)
[folder, baseFileName, extension] = fileparts(fullFileName)
if strcmpi(extension, '.wav')
break; % out of while loop
else
message = sprintf('Error: you must pick a wav file, not a "%s" file.', extension);
uiwait(warndlg(message));
end
end
2 Comments
Image Analyst
on 24 Nov 2013
You could also try to force them to pick a wave file by only showing them:
defaultFileName = fullfile(startingFolder, '*.wav');
More Answers (0)
See Also
Categories
Find more on Wavelet Toolbox 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!