필터 지우기
필터 지우기

Why is my code not working?

조회 수: 3 (최근 30일)
Emily Smith
Emily Smith 2016년 10월 21일
댓글: Emily Smith 2016년 10월 21일
I have the following code that allows me to increase/decrease the value of d by pressing the arrow keys.
d = 20
f = figure;
k=1;
while k
waitforbuttonpress;
if get(gcf,'CurrentCharacter')==28 %for left arrow key
d=d-10
elseif get(gcf,'CurrentCharacter')==29 %for right arrow key
d=d+10
elseif get(gcf,'CurrentCharacter')==32 %for space bar
break
end
end
It almost works, except I would like the loop to end or "break" when I press the space bar. For some reason when I try pressing the spacebar MatLab returns with "There is no CurrentCharacter property on the Figure class". I tried a slightly different code by changing "break" in the 11th line to "k=0" but I got the exact same error.
Thank you!!!
  댓글 수: 3
Chaya N
Chaya N 2016년 10월 21일
Emily, the code works just fine. Also you need not explicitly declare f = figure; on line 2. The waitforbuttonpress call will do that automatically.
Emily Smith
Emily Smith 2016년 10월 21일
Oops, yeah I misspelled it. Thanks!

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

답변 (0개)

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by