Execute multiple statements within an 'if' construct
Ältere Kommentare anzeigen
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 Kommentar
Jan
am 10 Apr. 2012
You forgot to mention, which problem appears. Do you get an error message?
Akzeptierte Antwort
Weitere Antworten (1)
Jan
am 10 Apr. 2012
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.
Kategorien
Mehr zu Just for fun finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!