Execute multiple statements within an 'if' construct
이전 댓글 표시
I am trying to set properties of 3 textbox based on the state of a radiobutton. If the radiobutton is selected, I want the textboxes to be grayed so the user cannot enter values. My code works if I set only one textbox. However, I can't get it to change all of teh textboxes at the same time. Here is my code so far:
if (get(handles.radiobutton1 ,'Value') == get(handles.radiobutton1 ,'Max'))
set(handles.edit4,'Enable','off', 'BackgroundColor', 'gray')
set(handles.edit5,'Enable','off', 'BackgroundColor', 'gray')
set(handles.edit6,'Enable','off', 'BackgroundColor', 'gray')
else
set(handles.edit4,'Enable','on', 'BackgroundColor', 'white')
set(handles.edit5,'Enable','on', 'BackgroundColor', 'white')
set(handles.edit6,'Enable','on', 'BackgroundColor', 'white')
end
Is there a way to use "set" to apply to more than one function handle at a time? Or why I can't I have multiple statements within my "if"?
Thank you in advance!
댓글 수: 1
Jan
2012년 4월 10일
You forgot to mention, which problem appears. Do you get an error message?
채택된 답변
추가 답변 (1개)
Jan
2012년 4월 10일
Actually this should work:
H = [handles.edit4, handles.edit5, handles.edit6];
if (get(handles.radiobutton1 ,'Value') == get(handles.radiobutton1 ,'Max'))
set(H, 'Enable','off', 'BackgroundColor', 'gray')
else
set(H, 'Enable','on', 'BackgroundColor', 'white')
end
But this has no substantial difference to your code. Therefore I assume, you get the same problem - what ever it might be.
카테고리
도움말 센터 및 File Exchange에서 Just for fun에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!