당신은 name
선택한 파일의 path
를 저장할 수있는 출력 변수를 specufy해야 선택); 이렇게하려면 세 번째 출력 (위의 예에서 sts
)을 사용할 수 있습니다 : "취소"의 경우 0
으로 설정됩니다.
그런 다음 을 사용하여 "wav
파일을로드 할 수 있습니다.
당신이 GUI 작업 후 선택하고 callback
에 wav
파일을 areading하는 경우를 검색하는 데, 나중에, 수있게하기 위해 GUI 데이터 srtuct에 데이터를 저장하는 기능 guidata
을 사용할 수 있습니다 데이터를 공유하고 서로를 공유 할 수 있습니다. callback
. 가능한 구현 다음합니다 (fullfile
기능은 파일의 전체 이름을 생성하는 데 사용됩니다 - "경로 \ file_name을)를에서
:이 도움이
% Get the file
[f_name,f_path,sts]=uigetfile({'*.wav'},'File Selector')
% If the user selected a file (if he did not click "Cancel")
if(sts)
% Load the ".wav" file
[sampled_data,sample_rate]=audioread(fullfile(f_path,f_name));
end
% Get the GUI data
my_guidata=guidata(gcf)
% Add the ".wav" file data to the GUI data struct
my_guidata.sampled_data=sampled_data
my_guidata.sample_rate=sample_rate
% Store the GUI data with the ".wav" data
guidata(gcf,my_guidata)
희망을,
Qapla '
위 코드를 시도했지만 코드가 잘 실행되고 데이터를 처리 할 수 있습니다 .. 그러나 작업 영역에 나타나지 않습니다 .. Anywasys 제안 해 주셔서 감사합니다 .. il_raffa –
함수 내에서 위 코드를 사용한다면 그래서 그것은 당신이 가지고있는 값을 반환합니다. 작업 공간의 nt ('[f_name, f_path, sts, sampled_data, sample_rate] = my_function (input_1, input_2)'와 같은 것). 이를 통해 2 입력을 요구하는 함수를 정의하고 파일, 경로 및 ".wav"데이터의 작업 영역을 반환합니다. GUIDE로 작성된 GUI로 작업하는 경우 OutputFcn을 사용할 수 있습니다. –