I want when index increase no. of layers should give inf or button disable to not accept more inputs,thanks
조회 수: 1 (최근 30일)
이전 댓글 표시
function ButtonPushed(app, event)
L = app.nooflayerEditField.Value;
r = zeros(L,1);
for i=1:L
if i > L
app.Button.Enable = off;
app.firstValEditField.Value= inf;
end
app.Button.Enable ='Off';
waitfor(app.firstValEditField.Value);
r = app.firstValEditField.Value;
r(i) = r;
app.Button.Enable ='On';
end
disp(r(i))
댓글 수: 0
채택된 답변
Walter Roberson
2024년 12월 11일
for i=1:L
if i > L
app.Button.Enable = off;
app.firstValEditField.Value= inf;
end
When you have for i=1:L it is not possible for i to exceed L (unless you specifically assign to i). So it is not possible for the test if i > L to succeed.
app.Button.Enable ='Off';
If the test somehow did succeed, then the first thing you would do after the if block would be to set app.Button.Enable back to 'off', which is a bit pointless.
waitfor(app.firstValEditField.Value);
app.firstValEditField.Value is a numeric value. You cannot waitfor() a numeric value.
If you wanted to wait until app.firstValEditField is deleted, you would
waitfor(app.firstValEditField);
If you wanted to wait until app.firstValEditField.Value changed then you would
waitfor(app.firstValEditField, 'Value');
A problem with waiting for it to change is that if user wants to retain the current value, there is no way to do that.
댓글 수: 7
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Startup and Shutdown에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!