Execute multiple statements within an 'if' construct
2 ビュー (過去 30 日間)
古いコメントを表示
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 件のコメント
採用された回答
Sean de Wolski
2012 年 4 月 10 日
Use either RGB triplets (e.g. [1 0 0] for red) or one of the letters abbreviated in:
doc linespec
e.g. 'r' for 'red'
ps: gray using grb triplets will have all three (R,G,B) values the same:
e.g. 24 shades of gray:
gray(24)
2 件のコメント
Jan
2012 年 4 月 10 日
[1, 1, 1] is white. If your uicontrol gets grey, this is an effect of setting the Enabled property.
その他の回答 (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.
2 件のコメント
Jan
2012 年 4 月 10 日
No, the error message does not contain garbage. Experiences Matlab users understand the contents of the messages, therefore it is recommended to post the messages completely in this forum.
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!