getngui.m

来自「非常好的数字处理教程」· M 代码 · 共 360 行

M
360
字号
function varargout = getNgui(varargin)% GETNGUI M-file for getNgui.fig%      GETNGUI, by itself, creates a new GETNGUI or raises the existing%      singleton*.%%      H = GETNGUI returns the handle to a new GETNGUI or the handle to%      the existing singleton*.%%      GETNGUI('CALLBACK',hObject,eventData,handles,...) calls the local%      function named CALLBACK in GETNGUI.M with the given input arguments.%%      GETNGUI('Property','Value',...) creates a new GETNGUI or raises the%      existing singleton*.  Starting from the left, property value pairs are%      applied to the GUI before getNgui_OpeningFunction gets called.  An%      unrecognized property name or invalid value makes property application%      stop.  All inputs are passed to getNgui_OpeningFcn via varargin.%%      *See GUI Options on GUIDE's Tools menu.  Choose "GUI allows only one%      instance to run (singleton)".%% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help getNgui% Last Modified by GUIDE v2.5 26-Apr-2004 10:14:11% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name',       mfilename, ...                   'gui_Singleton',  gui_Singleton, ...                   'gui_OpeningFcn', @getNgui_OpeningFcn, ...                   'gui_OutputFcn',  @getNgui_OutputFcn, ...                   'gui_LayoutFcn',  @getNgui_LayoutFcn, ...                   'gui_Callback',   []);if nargin & isstr(varargin{1})    gui_State.gui_Callback = str2func(varargin{1});endif nargout    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});else    gui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before getNgui is made visible.function getNgui_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject    handle to figure% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% varargin   command line arguments to getNgui (see VARARGIN)% Choose default command line output for getNguihandles.output = hObject;% Update handles structureguidata(hObject, handles);uiwait;% UIWAIT makes getNgui wait for user response (see UIRESUME)% uiwait(handles.getNgui_fig);% --- Outputs from this function are returned to the command line.function varargout = getNgui_OutputFcn(hObject, eventdata, handles)% varargout  cell array for returning output args (see VARARGOUT);% hObject    handle to figure% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Get default command line output from handles structure%varargout{1} = handles.output;varargout{1} = str2num(get(handles.N,'String'));close(handles.getN_fig);% --- Executes during object creation, after setting all properties.function N_CreateFcn(hObject, eventdata, handles)% hObject    handle to N (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc    set(hObject,'BackgroundColor','white');else    set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));endfunction N_Callback(hObject, eventdata, handles)% hObject    handle to N (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of N as text%        str2double(get(hObject,'String')) returns contents of N as a double% --- Executes on button press in done.function done_Callback(hObject, eventdata, handles)% hObject    handle to done (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)	uiresume;% --- Creates and returns a handle to the GUI figure. function h1 = getNgui_LayoutFcn(policy)% policy - create a new figure or use a singleton. 'new' or 'reuse'.persistent hsingleton;if strcmpi(policy, 'reuse') & ishandle(hsingleton)    h1 = hsingleton;    return;endh1 = figure(...'Units','characters',...'Color',[0.701960784313725 0.701960784313725 0.701960784313725],...'Colormap',[0 0 0.5625;0 0 0.625;0 0 0.6875;0 0 0.75;0 0 0.8125;0 0 0.875;0 0 0.9375;0 0 1;0 0.0625 1;0 0.125 1;0 0.1875 1;0 0.25 1;0 0.3125 1;0 0.375 1;0 0.4375 1;0 0.5 1;0 0.5625 1;0 0.625 1;0 0.6875 1;0 0.75 1;0 0.8125 1;0 0.875 1;0 0.9375 1;0 1 1;0.0625 1 1;0.125 1 0.9375;0.1875 1 0.875;0.25 1 0.8125;0.3125 1 0.75;0.375 1 0.6875;0.4375 1 0.625;0.5 1 0.5625;0.5625 1 0.5;0.625 1 0.4375;0.6875 1 0.375;0.75 1 0.3125;0.8125 1 0.25;0.875 1 0.1875;0.9375 1 0.125;1 1 0.0625;1 1 0;1 0.9375 0;1 0.875 0;1 0.8125 0;1 0.75 0;1 0.6875 0;1 0.625 0;1 0.5625 0;1 0.5 0;1 0.4375 0;1 0.375 0;1 0.3125 0;1 0.25 0;1 0.1875 0;1 0.125 0;1 0.0625 0;1 0 0;0.9375 0 0;0.875 0 0;0.8125 0 0;0.75 0 0;0.6875 0 0;0.625 0 0;0.5625 0 0],...'IntegerHandle','off',...'InvertHardcopy',get(0,'defaultfigureInvertHardcopy'),...'MenuBar','none',...'Name','getN',...'NumberTitle','off',...'PaperPosition',get(0,'defaultfigurePaperPosition'),...'Position',[103.8 25.9615384615385 24 5.5],...'Renderer',get(0,'defaultfigureRenderer'),...'RendererMode','manual',...'Resize','off',...'HandleVisibility','callback',...'Tag','getN_fig',...'UserData',[]);setappdata(h1, 'GUIDEOptions',struct(...'active_h', [], ...'taginfo', struct(...'figure', 2, ...'edit', 2, ...'text', 2, ...'pushbutton', 2), ...'override', 0, ...'release', 13, ...'resize', 'none', ...'accessibility', 'callback', ...'mfile', 1, ...'callbacks', 1, ...'singleton', 1, ...'syscolorfig', 1, ...'blocking', 0, ...'lastSavedFile', '/Users/bobsturm/gibson/SSUM/fdeqexpo/getN.m'));h2 = uicontrol(...'Parent',h1,...'Units','characters',...'BackgroundColor',[1 1 1],...'Callback','getNgui(''N_Callback'',gcbo,[],guidata(gcbo))',...'Position',[7 2.75 12 1.5],...'String','',...'Style','edit',...'CreateFcn','getNgui(''N_CreateFcn'',gcbo,[],guidata(gcbo))',...'Tag','N');h3 = uicontrol(...'Parent',h1,...'Units','characters',...'FontSize',12,...'HorizontalAlignment','right',...'Position',[1.83333333333333 2.91666666666667 3.33333333333333 1.08333333333333],...'String','N',...'Style','text',...'Tag','text1');h4 = uicontrol(...'Parent',h1,...'Units','characters',...'Callback','getNgui(''done_Callback'',gcbo,[],guidata(gcbo))',...'Position',[11 0.833333333333333 8 1.5],...'String','Done',...'Tag','done');hsingleton = h1;% --- Handles default GUIDE GUI creation and callback dispatchfunction varargout = gui_mainfcn(gui_State, varargin)gui_StateFields =  {'gui_Name'                    'gui_Singleton'                    'gui_OpeningFcn'                    'gui_OutputFcn'                    'gui_LayoutFcn'                    'gui_Callback'};gui_Mfile = '';for i=1:length(gui_StateFields)    if ~isfield(gui_State, gui_StateFields{i})        error('Could not find field %s in the gui_State struct in GUI M-file %s', gui_StateFields{i}, gui_Mfile);            elseif isequal(gui_StateFields{i}, 'gui_Name')        gui_Mfile = [getfield(gui_State, gui_StateFields{i}), '.m'];    endendnumargin = length(varargin);if numargin == 0    % GETNGUI    % create the GUI    gui_Create = 1;elseif numargin > 3 & ischar(varargin{1}) & ishandle(varargin{2})    % GETNGUI('CALLBACK',hObject,eventData,handles,...)    gui_Create = 0;else    % GETNGUI(...)    % create the GUI and hand varargin to the openingfcn    gui_Create = 1;endif gui_Create == 0    varargin{1} = gui_State.gui_Callback;    if nargout        [varargout{1:nargout}] = feval(varargin{:});    else        feval(varargin{:});    endelse    if gui_State.gui_Singleton        gui_SingletonOpt = 'reuse';    else        gui_SingletonOpt = 'new';    end        % Open fig file with stored settings.  Note: This executes all component    % specific CreateFunctions with an empty HANDLES structure.        % Do feval on layout code in m-file if it exists    if ~isempty(gui_State.gui_LayoutFcn)        gui_hFigure = feval(gui_State.gui_LayoutFcn, gui_SingletonOpt);    else        gui_hFigure = local_openfig(gui_State.gui_Name, gui_SingletonOpt);                    % If the figure has InGUIInitialization it was not completely created        % on the last pass.  Delete this handle and try again.        if isappdata(gui_hFigure, 'InGUIInitialization')            delete(gui_hFigure);            gui_hFigure = local_openfig(gui_State.gui_Name, gui_SingletonOpt);                    end    end        % Set flag to indicate starting GUI initialization    setappdata(gui_hFigure,'InGUIInitialization',1);    % Fetch GUIDE Application options    gui_Options = getappdata(gui_hFigure,'GUIDEOptions');        if ~isappdata(gui_hFigure,'GUIOnScreen')        % Adjust background color        if gui_Options.syscolorfig             set(gui_hFigure,'Color', get(0,'DefaultUicontrolBackgroundColor'));        end        % Generate HANDLES structure and store with GUIDATA        guidata(gui_hFigure, guihandles(gui_hFigure));    end        % If user specified 'Visible','off' in p/v pairs, don't make the figure    % visible.    gui_MakeVisible = 1;    for ind=1:2:length(varargin)        if length(varargin) == ind            break;        end        len1 = min(length('visible'),length(varargin{ind}));        len2 = min(length('off'),length(varargin{ind+1}));        if ischar(varargin{ind}) & ischar(varargin{ind+1}) & ...                strncmpi(varargin{ind},'visible',len1) & len2 > 1            if strncmpi(varargin{ind+1},'off',len2)                gui_MakeVisible = 0;            elseif strncmpi(varargin{ind+1},'on',len2)                gui_MakeVisible = 1;            end        end    end        % Check for figure param value pairs    for index=1:2:length(varargin)        if length(varargin) == index            break;        end        try, set(gui_hFigure, varargin{index}, varargin{index+1}), catch, break, end    end    % If handle visibility is set to 'callback', turn it on until finished    % with OpeningFcn    gui_HandleVisibility = get(gui_hFigure,'HandleVisibility');    if strcmp(gui_HandleVisibility, 'callback')        set(gui_hFigure,'HandleVisibility', 'on');    end        feval(gui_State.gui_OpeningFcn, gui_hFigure, [], guidata(gui_hFigure), varargin{:});        if ishandle(gui_hFigure)        % Update handle visibility        set(gui_hFigure,'HandleVisibility', gui_HandleVisibility);                % Make figure visible        if gui_MakeVisible            set(gui_hFigure, 'Visible', 'on')            if gui_Options.singleton                 setappdata(gui_hFigure,'GUIOnScreen', 1);            end        end        % Done with GUI initialization        rmappdata(gui_hFigure,'InGUIInitialization');    end        % If handle visibility is set to 'callback', turn it on until finished with    % OutputFcn    if ishandle(gui_hFigure)        gui_HandleVisibility = get(gui_hFigure,'HandleVisibility');        if strcmp(gui_HandleVisibility, 'callback')            set(gui_hFigure,'HandleVisibility', 'on');        end        gui_Handles = guidata(gui_hFigure);    else        gui_Handles = [];    end        if nargout        [varargout{1:nargout}] = feval(gui_State.gui_OutputFcn, gui_hFigure, [], gui_Handles);    else        feval(gui_State.gui_OutputFcn, gui_hFigure, [], gui_Handles);    end        if ishandle(gui_hFigure)        set(gui_hFigure,'HandleVisibility', gui_HandleVisibility);    endend    function gui_hFigure = local_openfig(name, singleton)try    gui_hFigure = openfig(name, singleton, 'auto');catch    % OPENFIG did not accept 3rd input argument until R13,    % toggle default figure visible to prevent the figure    % from showing up too soon.    gui_OldDefaultVisible = get(0,'defaultFigureVisible');    set(0,'defaultFigureVisible','off');    gui_hFigure = openfig(name, singleton);    set(0,'defaultFigureVisible',gui_OldDefaultVisible);end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?