私は、MATLABのGUIDEを使用して、ジュリアン時間から標準のIRIG時間に前後に変換する計算機を開発しています。電卓を起動すると、一方の方向に進んでも、もう一方の方向に進んでも問題なく動作しますが、同じセッションで行ったり来たりすると、どういうわけか何かが削除されます。私は2つのボタンのみを使用していますが、これら2つのボタンのコールバックのコードは次のようになります。
% --- Executes on button press in convertjulian.
function convertjulian_Callback(hObject, eventdata, handles)
% hObject handle to convertjulian (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
value = handles.isec;
day = floor(value/86400);
remainder = (value/86400 - day)*86400;
hour = floor(remainder/3600);
remainder = (remainder/3600 - hour)*3600;
min = floor(remainder/60);
sec = (remainder/60 - min)*60;
set(handles.jday,'String',day);
set(handles.jhour,'String',hour);
set(handles.jmin,'String',min);
set(handles.jsec,'String',sec);
他のコールバックは次のとおりです。
% --- Executes on button press in convertirig.
function convertirig_Callback(hObject, eventdata, handles)
% hObject handle to convertirig (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
seconds=handles.jday*86400+handles.jhour*3600+handles.jmin*60+handles.jsec;
set(handles.isec,'String',sprintf('%0.3f',seconds));
そして、MATLABを実行しているときにMATLABで発生するエラーは次のとおりです。
handle.handle/setの使用中にエラーが発生しました無効または削除されたオブジェクト。
timeconversion> convertjulian_Callbackのエラー(124行目)set(handles.jday、'String'、day);
gui_mainfcnのエラー(96行目)feval(varargin {:});
時間変換のエラー(42行目)gui_mainfcn(gui_State、varargin {:});
@(hObject、eventdata)timeconversion('convertjulian_Callback'、hObject、eventdata、guidata(hObject))のエラー
uicontrolコールバックの評価中にエラーが発生しました