Отменить программу в MATLAB - PullRequest
0 голосов
/ 05 марта 2011

У меня есть этот код:

fileName = inputdlg('Please enter the name for your figures');
directoryName = uigetdir('','Please select a folder to save to');
if directoryName == 0      %# User pressed the "Cancel" button...
directoryName = '';      %#   ...so choose the empty string for the folder
end
filePath = fullfile(directoryName,fileName{1});  %# Create the file path
extensions = {'fig','bmp'};
for k = 1:length(extensions)
  saveas(gcf,filePath,extensions{k});  %# Save the file
  set(gcf,'PaperPositionMode','auto');
end

Есть некоторые проблемы.Когда я запускаю его, возникает эта ошибка:

???Индекс превышает размеры матрицы.

Ошибка в ==> fyp_editor> uipushtool9_ClickedCallback в 1607
filePath = fullfile (directoryName, fileName {1});% # Создайте путь к файлу.

И еще одна вещь, когда я нажимаю кнопку отмены, она идет к пути к файлу.Как я хочу сделать что-то вроде;когда я нажимаю кнопку Отмена, программа отменяет сохранение.

1 Ответ

1 голос
/ 05 марта 2011

Если пользователь нажмет кнопку Отмена, имя файла будет пустым (массив ячеек 0x0).fileName {1} - это то, что вызывает исключение

...