0

我有点迷路了......我有一个 .m 文件,它通过保持和“立即绘制”重复地将冲浪图绘制成一个图形,以创建动画。

我现在创建了一个 GUI(标签:'GUI'),其中包含为模拟设置参数的指南。在 GUI 中设置参数并按下按钮后,我希望模拟像以前一样开始,但不是打印到图形我希望它现在打印到 GUI 中的轴对象(标签:'GUI_panel_plot_axes_fullframe')。

如何从 .m 文件中访问 GUI 中的轴对象?我尝试了以下方法但没有成功:

h = findobj('Tag','GUI');
handles = guihandles(h);
axes(handles.GUI_panel_plot_axes_fullframe);

但是,尝试访问应包含我的轴对象句柄的句柄对象时出现错误:

Error using guihandles
H must be the handle to a figure or figure descendent.

我愿意改变我访问句柄的方式......我已经尝试了多个在互联网上漫游的版本,但没有任何一个运气!任何帮助深表感谢!

4

1 回答 1

0

如果不查看其余代码,很难告诉您错误。无论如何,这是一个使用“指南”创建的非常简单的 GUI 示例。正如您所看到的,当您按下按钮时,图像被绘制到称为“axes1”的轴上。我想你可以明白的。

function varargout = untitled(varargin)
    % UNTITLED MATLAB code for untitled.fig
    %      UNTITLED, by itself, creates a new UNTITLED or raises the existing
    %      singleton*.
    %
    %      H = UNTITLED returns the handle to a new UNTITLED or the handle to
    %      the existing singleton*.
    %
    %      UNTITLED('CALLBACK',hObject,eventData,handles,...) calls the local
    %      function named CALLBACK in UNTITLED.M with the given input arguments.
    %
    %      UNTITLED('Property','Value',...) creates a new UNTITLED or raises the
    %      existing singleton*.  Starting from the left, property value pairs are
    %      applied to the GUI before untitled_OpeningFcn gets called.  An
    %      unrecognized property name or invalid value makes property application
    %      stop.  All inputs are passed to untitled_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 untitled

    % Last Modified by GUIDE v2.5 23-Feb-2018 14:39:54

    % Begin initialization code - DO NOT EDIT
    gui_Singleton = 1;
    gui_State = struct('gui_Name',       mfilename, ...
                       'gui_Singleton',  gui_Singleton, ...
                       'gui_OpeningFcn', @untitled_OpeningFcn, ...
                       'gui_OutputFcn',  @untitled_OutputFcn, ...
                       'gui_LayoutFcn',  [] , ...
                       'gui_Callback',   []);
    if nargin && ischar(varargin{1})
        gui_State.gui_Callback = str2func(varargin{1});
    end

    if 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 untitled is made visible.
    function untitled_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 untitled (see VARARGIN)

    % Choose default command line output for untitled
    handles.output = hObject;

    % Update handles structure
    guidata(hObject, handles);

    % UIWAIT makes untitled wait for user response (see UIRESUME)
    % uiwait(handles.figure1);


    % --- Outputs from this function are returned to the command line.
    function varargout = untitled_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;


    % --- Executes on button press in pushbutton1.
    function pushbutton1_Callback(hObject, eventdata, handles)
    % hObject    handle to pushbutton1 (see GCBO)
    % eventdata  reserved - to be defined in a future version of MATLAB
    % handles    structure with handles and user data (see GUIDATA)
    imshow('peppers.png','Parent',handles.axes1);
于 2018-02-23T13:48:08.293 回答