⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mytool_export.m

📁 matlabGUI编程实例:常用数学符号运算工具集合
💻 M
📖 第 1 页 / 共 3 页
字号:

appdata = [];
appdata.lastValidTag = 'pushbutton6';

h17 = uicontrol(...
'Parent',h1,...
'Units','characters',...
'Callback','mytool_export(''pushbutton6_Callback'',gcbo,[],guidata(gcbo))',...
'FontSize',12,...
'FontWeight','bold',...
'Position',[43.4 36.2307692307692 16.6 2.76923076923077],...
'String','泰勒展开',...
'Tag','pushbutton6',...
'CreateFcn', {@local_CreateFcn, blanks(0), appdata} );


hsingleton = h1;


% --- Set application data first then calling the CreateFcn. 
function local_CreateFcn(hObject, eventdata, createfcn, appdata)

if ~isempty(appdata)
   names = fieldnames(appdata);
   for i=1:length(names)
       name = char(names(i));
       setappdata(hObject, name, getfield(appdata,name));
   end
end

if ~isempty(createfcn)
   eval(createfcn);
end
% --- 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('MATLAB:gui_mainfcn:FieldNotFound', '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 = [gui_State.(gui_StateFields{i}), '.m'];    endendnumargin = length(varargin);if numargin == 0    % MYTOOL_EXPORT    % create the GUI only if we are not in the process of loading it    % already    gui_Create = true;elseif local_isInvokeActiveXCallback(gui_State, varargin{:})    % MYTOOL_EXPORT(ACTIVEX,...)    vin{1} = gui_State.gui_Name;    vin{2} = [get(varargin{1}.Peer, 'Tag'), '_', varargin{end}];    vin{3} = varargin{1};    vin{4} = varargin{end-1};    vin{5} = guidata(varargin{1}.Peer);    feval(vin{:});    return;elseif local_isInvokeHGCallbak(gui_State, varargin{:})    % MYTOOL_EXPORT('CALLBACK',hObject,eventData,handles,...)    gui_Create = false;else    % MYTOOL_EXPORT(...)    % create the GUI and hand varargin to the openingfcn    gui_Create = true;endif ~gui_Create    % In design time, we need to mark all components possibly created in    % the coming callback evaluation as non-serializable. This way, they    % will not be brought into GUIDE and not be saved in the figure file    % when running/saving the GUI from GUIDE.    designEval = false;    if (numargin>1 && ishghandle(varargin{2}))        fig = varargin{2};        while ~isempty(fig) && ~isa(handle(fig),'figure')            fig = get(fig,'parent');        end                designEval = isappdata(0,'CreatingGUIDEFigure') || isprop(fig,'__GUIDEFigure');    end            if designEval        beforeChildren = findall(fig);    end        % evaluate the callback now    varargin{1} = gui_State.gui_Callback;    if nargout        [varargout{1:nargout}] = feval(varargin{:});    else               feval(varargin{:});    end        % Set serializable of objects created in the above callback to off in    % design time. Need to check whether figure handle is still valid in    % case the figure is deleted during the callback dispatching.    if designEval && ishandle(fig)        set(setdiff(findall(fig),beforeChildren), 'Serializable','off');    endelse    if gui_State.gui_Singleton        gui_SingletonOpt = 'reuse';    else        gui_SingletonOpt = 'new';    end    % Check user passing 'visible' P/V pair first so that its value can be    % used by oepnfig to prevent flickering    gui_Visible = 'auto';    gui_VisibleInput = '';    for index=1:2:length(varargin)        if length(varargin) == index || ~ischar(varargin{index})            break;        end        % Recognize 'visible' P/V pair        len1 = min(length('visible'),length(varargin{index}));        len2 = min(length('off'),length(varargin{index+1}));        if ischar(varargin{index+1}) && strncmpi(varargin{index},'visible',len1) && len2 > 1            if strncmpi(varargin{index+1},'off',len2)                gui_Visible = 'invisible';                gui_VisibleInput = 'off';            elseif strncmpi(varargin{index+1},'on',len2)                gui_Visible = 'visible';                gui_VisibleInput = 'on';            end        end    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    gui_Exported = ~isempty(gui_State.gui_LayoutFcn);    % this application data is used to indicate the running mode of a GUIDE    % GUI to distinguish it from the design mode of the GUI in GUIDE. it is    % only used by actxproxy at this time.       setappdata(0,genvarname(['OpenGuiWhenRunning_', gui_State.gui_Name]),1);    if gui_Exported        gui_hFigure = feval(gui_State.gui_LayoutFcn, gui_SingletonOpt);        % make figure invisible here so that the visibility of figure is        % consistent in OpeningFcn in the exported GUI case        if isempty(gui_VisibleInput)            gui_VisibleInput = get(gui_hFigure,'Visible');        end        set(gui_hFigure,'Visible','off')        % openfig (called by local_openfig below) does this for guis without        % the LayoutFcn. Be sure to do it here so guis show up on screen.        movegui(gui_hFigure,'onscreen');    else        gui_hFigure = local_openfig(gui_State.gui_Name, gui_SingletonOpt, gui_Visible);        % 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, gui_Visible);        end    end    if isappdata(0, genvarname(['OpenGuiWhenRunning_', gui_State.gui_Name]))        rmappdata(0,genvarname(['OpenGuiWhenRunning_', gui_State.gui_Name]));    end    % Set flag to indicate starting GUI initialization    setappdata(gui_hFigure,'InGUIInitialization',1);    % Fetch GUIDE Application options    gui_Options = getappdata(gui_hFigure,'GUIDEOptions');    % Singleton setting in the GUI M-file takes priority if different    gui_Options.singleton = gui_State.gui_Singleton;    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. If there is        % user set GUI data already, keep that also.        data = guidata(gui_hFigure);        handles = guihandles(gui_hFigure);        if ~isempty(handles)            if isempty(data)                data = handles;            else                names = fieldnames(handles);                for k=1:length(names)                    data.(char(names(k)))=handles.(char(names(k)));                end            end        end        guidata(gui_hFigure, data);    end    % Apply input P/V pairs other than 'visible'    for index=1:2:length(varargin)        if length(varargin) == index || ~ischar(varargin{index})            break;        end        len1 = min(length('visible'),length(varargin{index}));        if ~strncmpi(varargin{index},'visible',len1)            try set(gui_hFigure, varargin{index}, varargin{index+1}), catch break, end        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 isscalar(gui_hFigure) && ishandle(gui_hFigure)        % Handle the default callbacks of predefined toolbar tools in this        % GUI, if any        guidemfile('restoreToolbarToolPredefinedCallback',gui_hFigure);                 % Update handle visibility        set(gui_hFigure,'HandleVisibility', gui_HandleVisibility);        % Call openfig again to pick up the saved visibility or apply the        % one passed in from the P/V pairs        if ~gui_Exported            gui_hFigure = local_openfig(gui_State.gui_Name, 'reuse',gui_Visible);        elseif ~isempty(gui_VisibleInput)            set(gui_hFigure,'Visible',gui_VisibleInput);        end        if strcmpi(get(gui_hFigure, 'Visible'), 'on')            figure(gui_hFigure);                        if gui_Options.singleton                setappdata(gui_hFigure,'GUIOnScreen', 1);            end        end        % Done with GUI initialization        if isappdata(gui_hFigure,'InGUIInitialization')            rmappdata(gui_hFigure,'InGUIInitialization');        end        % If handle visibility is set to 'callback', turn it on until        % finished with OutputFcn        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 isscalar(gui_hFigure) && ishandle(gui_hFigure)        set(gui_hFigure,'HandleVisibility', gui_HandleVisibility);    endendfunction gui_hFigure = local_openfig(name, singleton, visible)% openfig with three arguments was new from R13. Try to call that first, if% failed, try the old openfig.if nargin('openfig') == 2    % 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);else    gui_hFigure = openfig(name, singleton, visible);endfunction result = local_isInvokeActiveXCallback(gui_State, varargin)try    result = ispc && iscom(varargin{1}) ...             && isequal(varargin{1},gcbo);catch    result = false;endfunction result = local_isInvokeHGCallbak(gui_State, varargin)try    fhandle = functions(gui_State.gui_Callback);    result = ~isempty(findstr(gui_State.gui_Name,fhandle.file)) || ...             (ischar(varargin{1}) ...             && isequal(ishandle(varargin{2}), 1) ...             && ~isempty(strfind(varargin{1},[get(varargin{2}, 'Tag'), '_'])));catch    result = false;end

⌨️ 快捷键说明

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