我有三个guis:gui1,gui2和gui3。这是他们的工作方式。 Gui1是主gui,gui2由gui1调用,随后gui3由gui2调用。现在在gui3的var total_zust = new Array();
var total_zqnt_service = new Array();
var array = 1;
<PDM_LIST SOURCE=args.children>
total_zust[array] = $args.children.category.zust;
total_zqnt_service[array] = $args.children.zqnt_service;
array++;
</PDM_LIST>
var total_qtd_ust = 0;
var total_qtdServ = 0;
function zloadTotalUst(){
for (var i=1; i <= $args.children.length; i++){
total_qtd_ust = total_qtd_ust + (total_zust[i] * total_zqnt_service[i]);
total_qtdServ = total_qtdServ + total_zqnt_service[i];
}
if("$prop.form_name_3" == "edit"){
if("$args.id" == 0 && ("$args.ztotal_ust" == null || "$args.ztotal_ust" == 0)){
document.main_form.elements["SET.ztotal_ust"].value = "$args.children.category.zust";
}
if("$args.id" != 0 && ("$args.ztotal_ust" != null && "$args.children.length" != 0)){
document.main_form.elements["SET.ztotal_ust"].value = total_qtd_ust;
}
}
中,我写了以下代码:
CloseRequestFcn(hObject, eventdata, handles)
所以在gui3中我使用function settings_CloseRequestFcn(hObject, eventdata, handles)
% hObject handle to settings (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hint: delete(hObject) closes the figure
saveState(handles);
h=findobj('Tag','gui2');
gdata=guidata(h);
<some code here>
delete(hObject);
来访问gui2的所有句柄。现在我运行gui1,然后使用它gui2,后者gui3我没有得到任何错误。但是当试图关闭gui3时,我收到了以下错误:
gdata
我不知道这意味着什么。但是当gui1关闭并且我用gui2打开gui3时我没有得到那个错误,一切正常。当我第一次打开父gui1时出现问题。如何解决这个问题?
最佳