Switch does not work in GUI
显示 更早的评论
While running my code through a GUI the SWITCH function does that detect the cases, or maybe it just jumps to the bottom otherwise every time.
contents = cellstr(get(S.element,'String'));
t1 = contents{get(S.element,'Value')};
t = char(t1);
contents = cellstr(get(S.mass,'String'));
u1 = contents{get(S.mass,'Value')};
u = char(u1);
contents = cellstr(get(S.volume,'String'));
v1 = contents{get(S.volume,'Value')};
v = char(v1);
global dens
switch t
case strcmp(t,'Scandium')
dens = 2.989;
case strcmp(t,'Yttrium')
dens = 4.469;
case strcmp(t,'Selenium')
dens = 4.809;
case strcmp(t,'Krypton')
dens = .003733;
case strcmp(t,'Neodymium')
dens = 7.007;
case strcmp(t,'Antimony')
dens = 6.685;
case strcmp(t,'Astatine')
dens = 7;
otherwise
dens = 8.55;
end
Every time it jumps to the other wise option of -- dens = 8.55.
采纳的回答
更多回答(2 个)
Image Analyst
2012-11-10
Try it like this:
switch lower(t)
case 'scandium'
dens = 2.989;
case 'yttrium'
dens = 4.469;
case 'selenium'
dens = 4.809;
case 'krypton'
dens = .003733;
case 'neodymium'
dens = 7.007;
case 'antimony'
dens = 6.685;
case 'astatine'
dens = 7;
otherwise
dens = 8.55;
end
类别
在 帮助中心 和 File Exchange 中查找有关 Adding custom doc 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!