Disable Edit Text with Checkbox

1 visualizzazione (ultimi 30 giorni)
Jan Lützenkirchen
Jan Lützenkirchen il 26 Lug 2018
Modificato: Adam Danz il 28 Lug 2018
Hello Everybody, I need your Help. I build a GUI and I want to activate or deactivate a Edit Text Box with the Help of a Checkbox. The following is my Code for this Problem:
WN = get(handles.White_Noise,'Enable');
if WN == 'on'
set(handles.WN_per,'enable','on');
set_param('Physikalisches_Modell/Noise_Enable','Value',num2str(1));
else WN == 'off'
set(handles.WN_per,'enable','off');
set_param('Physikalisches_Modell/Noise_Enable','Value',num2str(0));
WN_per = 0;
end
White_Noise is the Checkbox, WN_per is the Edit Text. The Part, to activate the Edit Text Box works perfectly fine, but i cannot deactivate it with pressing it again.
There was another Topic for this Problem, where the User hat a similar Code and it worked, when he Startet the GUI with the Command Window. Unfortunatly, this is not the Solution.
Can anyone help me?
Tanks, Jan

Risposte (1)

Adam Danz
Adam Danz il 26 Lug 2018
Modificato: Adam Danz il 26 Lug 2018
For both conditionals, instead of
if WN == 'on'
use
if strcmp(WN, 'on')
See comments below. You want to condition on the 'Value' property, not the 'Enable'.
  4 Commenti
Jan Lützenkirchen
Jan Lützenkirchen il 27 Lug 2018
Thank you very much! Now that I know the Answer, its pretty obvious, that I mistake the handles I used.
I want to add, that the 'Value' gives a number, 0 or 1. So in the if-condition, i set
if WN == 1
....
else if WN == 0
....
end
Adam Danz
Adam Danz il 28 Lug 2018
Modificato: Adam Danz il 28 Lug 2018
The value property is a logical. So all you need is
if WN
if ~WN

Accedi per commentare.

Categorie

Scopri di più su Entering Commands in Help Center e File Exchange

Prodotti


Release

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by