2013-04-08 2 views
0

Matlab에 GUI 메뉴가 4 개 버튼 (menu.fig)이 있습니다. 그런 다음 버튼을 클릭 할 때 열려고하는 4 .fig 파일이 있습니다.Matlab GUI 비 구조적 배열의 필드 참조 시도

???? Attempt to reference field of non-structure array.

내가 직접 1.fig 열려고하면이 모든 것이 완벽하게 작동 : 나는이 오류가 플롯을 수행하는 메뉴 삽입 값에서 .fig를 열 때 여기 모든 괜찮습니다.

나는이 문제가 eval()과 관련 있다고 읽었지만 해결할 수 없다.

function pbutton1_Callback(hObject, eventdata, handles) 
A1=get(handles.edtSAmp,'String'); 
f1=get(handles.edtSFreq, 'String'); 
fi1=get(handles.edtSFase, 'String'); 
t1=get(handles.popTipo, 'Value'); 

A1=str2double(A1); 
f1=str2double(f1); 
fi=str2double(fi1); 

SinalSinusoidal(A1,f1,fi,t1); 

내가 그 첫째 줄에 오류가 발생했습니다 :

나는 각 변수 이름은

한 1.fig 파일 .fig 변경되었습니다.

답변

2

나는 이것이 MATLAB GUI가 잘 처리되지 않는다고 생각합니다. 그것이 작동하는 데 익숙해졌지만, UI 또는 UI 관련 코드를 약간 수정하고 우연히 MATLAB이 손대지 말라고 말한 일부 영역을 수정하면 이런 종류의 문제가 발생하기 시작합니다.

workaournd는 실행 나는 그것이 작동 알고

을 클릭하여 M 편집기에서 GUI를 시작하는 것입니다 만, 원래 내가 직접 미사일 할 때, 너무 작동합니다. 그래서, 이것은 그것의 끝이 아닙니다, 사람들은 단지 그것의 끝에 도달하지 않습니다.

0

문제는 아마도 handles1입니다. 그것은 당신이 기대하는 것과 같은 구조 배열이 아닙니다. GUIDE로 만든 GUI에서 handleshandles1이 모두있는 경우이 변수는 일반적으로 handles이라고하며 handles1에는 그림의 개체에 대한 핸들이 포함되어 있어야합니다. handles1 만 사용하는 경우 올바르게 초기화해야합니다.

+0

시도해 보려고 손잡이가 바뀌 었습니다. 문제가 해결됩니다. –

+0

코드에서 어디서나 변경 했습니까? GUI가 GUIDE로 제작 되었습니까? – Molly

+0

나는 그 오류가 생겼을 때만 그것을 변경했다. 그런 다음 변경 사항을 취소했다. 예, GUIDE로 만들어졌습니다. –