Filter löschen
Filter löschen

MATLAB GUI: I want to display an error message if user selects the wrong file type

3 Ansichten (letzte 30 Tage)
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

Akzeptierte Antwort

Image Analyst
Image Analyst am 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 Kommentare
Image Analyst
Image Analyst am 24 Nov. 2013
You could also try to force them to pick a wave file by only showing them:
defaultFileName = fullfile(startingFolder, '*.wav');

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Wavelet Toolbox finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by