SPUR0645 发表于 2009-6-17 20:00

如何去调用另一个界面上的句柄?

Matlab GUI中如何调用另一个界面的句柄                                                                                                                                                                                                                                                                                                                                                                        http://www.ilovematlab.cn/images/default/attachimg.gif                                                                                                http://www.ilovematlab.cn/attachments/month_0906/20090616_6430d77732f7dcc8bd43HW9B8xcqj4Li.jpg                                                                                                        http://www.ilovematlab.cn/images/attachicons/image.gif test1.jpg (43.25 KB)
                                                                        2009-6-16 15:00

       
                                                http://www.ilovematlab.cn/images/default/attachimg.gif                                                                                                http://www.ilovematlab.cn/attachments/month_0906/20090616_a2afafc4f70c5f682b4dlWprAipcl8ZZ.jpg                                                                                                        http://www.ilovematlab.cn/images/attachicons/image.gif test2.jpg (45.54 KB)
                                                                        2009-6-16 15:00

       

举个简单的例子
图一,
test1上有个按钮,读取。
图二,
test2 上有个按钮的面板,和一个edit text , 注意 我这里把面板的visible 改为off
现在我向实现的,点test1上的读取按钮之后,按钮的面板能再test2上显示出来。

按钮下的程序是这样的,
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton1 (see GCBO)
% eventdatareserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)

test2
set(handles.uipanel1,'visible','on')
set(handles.edit1,'string',5); %给edit1 再赋个值!

??? Reference to non-existent field 'uipanel1'.

Error in ==> test1>pushbutton1_Callback at 94
set(handles.uipanel1,'visible','on')

Error in ==> gui_mainfcn at 75
      feval(varargin{:});

Error in ==> test1 at 42
    gui_mainfcn(gui_State, varargin{:});

??? Error while evaluating uicontrol Callback.

>>
报错是说uipanel1没有被定义,想问一下,怎么才能再一个gui界面下定义另一个gui界面的句柄,然后被调用呢?

ChaChing 发表于 2009-6-17 22:11

global不能解决吗?

SPUR0645 发表于 2009-6-17 22:55

回复 沙发 ChaChing 的帖子

句柄也能global 吗? 我只知道,变量可以global
请教一下,如何把test2 中的 控件的句柄定义为全局变量,然后让test1中的控件能对其进行操作?
谢谢

ChaChing 发表于 2009-6-17 23:25

新版GUI真的不熟!
印象中好像见过类似的, 现必须下线, 先自己搜下!

http://forum.vibunion.com/forum/viewthread.php?tid=81810
页: [1]
查看完整版本: 如何去调用另一个界面上的句柄?