注册 登录
编程论坛 Matlab

求教同一个GUI中不同function间的调用

zhaoriBYR 发布于 2010-06-16 21:36, 1668 次点击
function popupmenu2_Callback(hObject, eventdata, handles)

val1=get(hObject,'Value');
switch val1
    case 1
        handles.rv_idx = 0;
    case 2
        handles.rv_idx = 1;
    case 3
        handles.rv_idx = 2;
    case 4
        handles.rv_idx = 3;
end
guidata(hObject, handles);


function edit3_Callback(hObject, eventdata, handles)

val6 = str2double(get(hObject, 'String'));
handles.RBNum= val6;
guidata(hObject,handles)


function start_simulation_Callback(hObject, eventdata, handles)
flagtime = top_GUI(handles.RBNum,handles.rv_idx);


就是前两个控件分别得到handles.RBNum和handles.rv_idx,然后想把这两个参数放到top_GUI的.m文件中,调用top_GUI.m文件,但是显示
Reference to non-existent field 'rv_idx'.

Error in ==> abc>start_simulation_Callback at 432
flagtime =
top_GUI(hObject, eventdata, handles);
Error in ==> gui_mainfcn at 96
        feval(varargin{:});
Error in ==> abc at 42
    gui_mainfcn(gui_State, varargin{:});
Error in ==> guidemfile>@(hObject,eventdata)abc('start_simulation_Callback',hObject,eventdata,guidata(hObject))
6 回复
#2
zhaoriBYR2010-06-16 21:36
希望大家能给我说一下
#3
zhaoriBYR2010-06-16 21:39
快点来人啊,救命啊
#4
zhaoriBYR2010-06-16 21:53
刚刚试了一下,edit text控件输入的数据可以用handles.xxx送到我的Top_GUI函数中去,而pop-up menu即下拉菜单控件得到的输入数据用handles.xxx就不能呢送到我的Top_GUI函数中去,这时会出现,上面的错误提示

大家给说一下啊......
#5
anbcjys2010-06-17 08:47
检查popupmenu2部分是否有数值没有运行到
#6
zhaoriBYR2010-06-17 11:16
总结一下:问题是出在下拉菜单控件没有指定默认值,在测试界面的时候由于下拉菜单项有默认显示,所以没有去选取,所有造成了实际上没有给参数赋值,所以参数传递不成功
#7
zhaoriBYR2010-06-17 11:16
谢谢各位了
1