www.gusucode.com > 利用MATLAB GUI设计滤波器界面,可以设计IIR滤波器 > AFD/SpecifyFilter_TypeChange.m

    function SpecifyFilter_uipmType(handles)
% SpecifyFilter_uipmType is a subfile of the AnalogFilter GUI collection
%
% James C. Squire, 2002
% Assistant Professor, Virginia Military Institute
% ver 1.0

% SpecifyFilter_uipmType dims/undims options depending on the Type parameter


vsContents = get(handles.uipmType,'String');
switch vsContents{get(handles.uipmType,'Value')}
    case {'Bessel', 'Butterworth'}
        set(handles.uitxGp,'Enable','off')
        set(handles.uitxGpGp,'Enable','off')
        set(handles.uitxGpdB,'Enable','off')
        set(handles.uitxGs,'Enable','off')
        set(handles.uitxGsGs,'Enable','off')
        set(handles.uitxGsdB,'Enable','off')
    case 'Chebychev I'
        set(handles.uitxGp,'Enable','on')
        set(handles.uitxGpGp,'Enable','on')
        set(handles.uitxGpdB,'Enable','on')
        set(handles.uitxGs,'Enable','off')
        set(handles.uitxGsGs,'Enable','off')
        set(handles.uitxGsdB,'Enable','off')
    case 'Chebychev II'
        set(handles.uitxGp,'Enable','off')
        set(handles.uitxGpGp,'Enable','off')
        set(handles.uitxGpdB,'Enable','off')
        set(handles.uitxGs,'Enable','on')
        set(handles.uitxGsGs,'Enable','on')
        set(handles.uitxGsdB,'Enable','on')
    case 'Elliptic'
        set(handles.uitxGp,'Enable','on')
        set(handles.uitxGpGp,'Enable','on')
        set(handles.uitxGpdB,'Enable','on')
        set(handles.uitxGs,'Enable','on')
        set(handles.uitxGsGs,'Enable','on')
        set(handles.uitxGsdB,'Enable','on')
    otherwise error(['Unidentified type in ' mfilename])
end