У меня есть 2 edittext uicontrol. Я хочу включить второй, если первый вход обеспечивает условие. Однако я столкнулся с ошибкой «Ссылка на несуществующее поле». Мой код ниже:включить один uicontrol другим uicontrol MATLAB
% xadet is a number input
S.eth_xadet = uicontrol(S.ph_agac,'Style','edit',...
'String','1',...
'HorizontalAlignment','right',...
'BackgroundColor','w',...
'Position',[200 68 30 18],...
'callback',{@eth_x_adet_enable,S});
% xaralik is a number input
S.eth_xaralik = uicontrol(S.ph_agac,'Style','edit',...
'enable','off',...
'String','0',...
'HorizontalAlignment','right',...
'Position',[240 68 50 18]);
function [] = eth_x_adet_enable(varargin)
S = varargin{3}
x_adet = str2double(get(S.eth_xadet,{'String'}));
if x_adet > 1 % if input is bigger than 1, enable xaralik
set(S.eth_xaralik,'enable','on',...
'BackgroundColor','w');
end
remove '{}' in 'x_adet = str2double (get (S.eth_xadet, {'String'}))'? Кстати, не говорит ли Matlab об ошибке, в какой строке? – scmg
Удалять {} это не моя проблема. Я принял x_adet как вход в тот же скрипт с той же строкой кода. Кроме того, Matlab не указывает, где проблема. Вместо этого это указывает на то, что «Ссылка на несуществующее поле« S.eth_xadet ». – kenes
Вы получите дополнительную помощь, если бы опубликовали исполняемый код минимального примера, воспроизводящего вашу проблему. – thewaywewalk