我有一个使用 MATLAB GUIDE 创建的 GUI。我正在尝试从 GUI 返回一个值。以下是代码的相关部分(完整代码可以在这里找到):
function varargout = test(varargin)
% --- Outputs from this function are returned to the command line.
function varargout = test_OutputFcn(hObject, eventdata, handles)
% Get default command line output from handles structure
varargout{1} = handles.output;
varargout{2} = handles.test;
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
handles.test = 'ok';
% Update handles structure
guidata(hObject, handles);
一旦我执行 GUI,我就会收到以下错误消息:
我在 MATLAB 新闻组上发现了一个类似的问题,但我没有找到解决方案(我阅读了所有 guidata 的文档,就像建议的那样)。
我的问题是我在一个 GUIDE 的函数中的“句柄”结构中记录了一条信息,而我无法在另一个函数中检索此信息。
我试图取消注释test_OpeningFcn
函数中的 UIWAIT 调用,以等待用户关闭窗口。
% --- Executes just before test is made visible.
function test_OpeningFcn(hObject, eventdata, handles, varargin)
% Choose default command line output for test
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
% UIWAIT makes test wait for user response (see UIRESUME)
uiwait(handles.figure1);
在我单击按钮后,然后尝试获取句柄变量。但它也不起作用,并且失败并显示类似的错误消息。
欢迎任何帮助。感谢您的关注。