程序已经编辑好,在套壳后运行matlab报错说无法将双精度数值转换为句柄。请各位帮我看看。谢谢
程序如下
classdef app3 < matlab.apps.AppBase
% Properties that correspond to app components
properties (Access = public)
UIFigure matlab.ui.Figure
Label_7 matlab.ui.control.Label
Label_16 matlab.ui.control.Label
y matlab.ui.control.NumericEditField
Label_17 matlab.ui.control.Label
m matlab.ui.control.NumericEditField
Label_18 matlab.ui.control.Label
d matlab.ui.control.NumericEditField
Label_19 matlab.ui.control.Label
t matlab.ui.control.NumericEditField
Label_20 matlab.ui.control.Label
j matlab.ui.control.NumericEditField
Label_21 matlab.ui.control.Label
w matlab.ui.control.NumericEditField
Label_22 matlab.ui.control.Label
In matlab.ui.control.NumericEditField
end
% Callbacks that handle component events
methods (Access = private)
% Value changed function: y
function yValueChanged(app, event)
app.y =app.y.Value;
end
% Value changed function: m
function mValueChanged(app, event)
value =app.m.Value;
app.m =value;
end
% Value changed function: d
function dValueChanged(app, event)
value = app.d.Value;
app.d = value;
end
% Value changed function: t
function tValueChanged(app, event)
value = app.t.Value;
app.t = value;
end
% Value changed function: j
function jValueChanged(app, event)
value = app.j.Value;
app.j = value;
end
% Value changed function: w
function wValueChanged(app, event)
value = app.w.Value;
app.w = value;
end
% Value changed function: In
function InValueChanged(app, event)
app.In.Value=nl;
Io=1353;
v0 = datenum(app.m,app.d,app.y);
v = datevec(v0);
N= v0-datenum(v(1),1,1)+1;
sinc=0.39795*cos(0.98563*(N-173)/180*pi);
c=asin(sinc); %赤纬
h=(app.t+(app.j-round(app.j))/15-12)*15; %时角
sinI=cos(app.w)*cos(c)*cos(h)+sin(app.w)*sin(c);
I=asin(sinI);
app.In=Io*0.7^(1/sin(I));
app.In.Value = app.In;
end
end
% Component initialization
methods (Access = private)
% Create UIFigure and components
function createComponents(app)
% Create UIFigure and hide until all components are created
app.UIFigure = uifigure('Visible', 'off');
app.UIFigure.Position = [100 100 640 480];
app.UIFigure.Name = 'MATLAB App';
% Create Label_7
app.Label_7 = uilabel(app.UIFigure);
app.Label_7.FontName = '宋体';
app.Label_7.FontSize = 20;
app.Label_7.Position = [104 215 268 52];
app.Label_7.Text = '注:东经取正值,西经取负值';
% Create Label_16
app.Label_16 = uilabel(app.UIFigure);
app.Label_16.HorizontalAlignment = 'right';
app.Label_16.FontName = '宋体';
app.Label_16.FontSize = 20;
app.Label_16.Position = [167 367 25 26];
app.Label_16.Text = '年';
% Create y
app.y = uieditfield(app.UIFigure, 'numeric');
app.y.ValueChangedFcn = createCallbackFcn(app, @yValueChanged, true);
app.y.FontName = '宋体';
app.y.FontSize = 20;
app.y.Position = [103 368 57 25];
% Create Label_17
app.Label_17 = uilabel(app.UIFigure);
app.Label_17.HorizontalAlignment = 'right';
app.Label_17.FontName = '宋体';
app.Label_17.FontSize = 20;
app.Label_17.Position = [263 367 25 26];
app.Label_17.Text = '月';
% Create m
app.m = uieditfield(app.UIFigure, 'numeric');
app.m.ValueChangedFcn = createCallbackFcn(app, @mValueChanged, true);
app.m.FontName = '宋体';
app.m.FontSize = 20;
app.m.Position = [199 368 57 25];
% Create Label_18
app.Label_18 = uilabel(app.UIFigure);
app.Label_18.HorizontalAlignment = 'right';
app.Label_18.FontName = '宋体';
app.Label_18.FontSize = 20;
app.Label_18.Position = [371 367 25 26];
app.Label_18.Text = '日';
% Create d
app.d = uieditfield(app.UIFigure, 'numeric');
app.d.ValueChangedFcn = createCallbackFcn(app, @dValueChanged, true);
app.d.FontName = '宋体';
app.d.FontSize = 20;
app.d.Position = [307 368 57 25];
% Create Label_19
app.Label_19 = uilabel(app.UIFigure);
app.Label_19.HorizontalAlignment = 'right';
app.Label_19.FontName = '宋体';
app.Label_19.FontSize = 20;
app.Label_19.Position = [476 367 25 26];
app.Label_19.Text = '点';
% Create t
app.t = uieditfield(app.UIFigure, 'numeric');
app.t.ValueChangedFcn = createCallbackFcn(app, @tValueChanged, true);
app.t.FontName = '宋体';
app.t.FontSize = 20;
app.t.Position = [412 368 57 25];
% Create Label_20
app.Label_20 = uilabel(app.UIFigure);
app.Label_20.HorizontalAlignment = 'right';
app.Label_20.FontName = '宋体';
app.Label_20.FontSize = 20;
app.Label_20.Position = [99 292 45 26];
app.Label_20.Text = '经度';
% Create j
app.j = uieditfield(app.UIFigure, 'numeric');
app.j.ValueChangedFcn = createCallbackFcn(app, @jValueChanged, true);
app.j.FontName = '宋体';
app.j.FontSize = 20;
app.j.Position = [159 293 57 25];
% Create Label_21
app.Label_21 = uilabel(app.UIFigure);
app.Label_21.HorizontalAlignment = 'right';
app.Label_21.FontName = '宋体';
app.Label_21.FontSize = 20;
app.Label_21.Position = [255 292 45 26];
app.Label_21.Text = '纬度';
% Create w
app.w = uieditfield(app.UIFigure, 'numeric');
app.w.ValueChangedFcn = createCallbackFcn(app, @wValueChanged, true);
app.w.FontName = '宋体';
app.w.FontSize = 20;
app.w.Position = [311 293 57 25];
% Create Label_22
app.Label_22 = uilabel(app.UIFigure);
app.Label_22.HorizontalAlignment = 'right';
app.Label_22.FontName = '宋体';
app.Label_22.FontSize = 20;
app.Label_22.Position = [104 158 65 26];
app.Label_22.Text = '辐照度';
% Create In
app.In = uieditfield(app.UIFigure, 'numeric');
app.In.ValueChangedFcn = createCallbackFcn(app, @InValueChanged, true);
app.In.FontName = '宋体';
app.In.FontSize = 20;
app.In.Position = [181 159 57 25];
% Show the figure after all components are created
app.UIFigure.Visible = 'on';
end
end
% App creation and deletion
methods (Access = public)
% Construct app
function app = app3
% Create UIFigure and components
createComponents(app)
% Register the app with App Designer
registerApp(app, app.UIFigure)
if nargout == 0
clear app
end
end
% Code that executes before app deletion
function delete(app)
% Delete UIFigure when app is deleted
delete(app.UIFigure)
end
end
end
同学你好,把你报错的图片发过来呢,红字的部分