Error in the Code shown below:

조회 수: 9 (최근 30일)
Mohsin
Mohsin 2018년 11월 30일
편집: Guillaume 2018년 11월 30일
handles.text_ch = []; % Vector of the Test Fields
Offset = 0;
for range = 1:32
set(handles.text_ch(range), 'String', sprintf('%d', range + Offset * 32));
end
Error is:
Index exceeds array bounds.
Error in GUI_OpeningFcn (line 122)
set(handles.text_ch(range), 'String', sprintf('%d', range + Offset * 32));
Please help me.

답변 (1개)

Guillaume
Guillaume 2018년 11월 30일
Isn't the error obvious? You defin handles.text_ch as an empty array and then try to access its elements 1 to 32. Since it's empty it doesn't even have an element at index 1.
Put at least 32 elements in that handles.text_ch variable. Note that these 32 elements should be some sort of uicontrol.
  댓글 수: 4
Mohsin
Mohsin 2018년 11월 30일
Yes this string will change the unicontrol property. But how can i initialize the handles.text_ch variable, other then []. I didn't get the point.
Guillaume
Guillaume 2018년 11월 30일
편집: Guillaume 2018년 11월 30일
The code you show is meant to change the String property of 32 different UI controls. Hence you need to put the handle of 32 UI controls into handle.text_ch. How you do this, I can't tell you since I've no idea how you create these 32 controls in the first place. If you create them in code, put their handle in handle.text_ch when you create them.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 MATLAB에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by