image thumbnail
from A Multiple Units Converter and a Calculator by Hong Zhang
It contains a units converter and a caculator using pure m files

pressure2.m
hsp = uipanel('Parent',hp,'Title','','FontSize',12,...
              'Position',[0 0 1 1]);
p=[230 370 50 20];
d1=[0 -25 0 0];
d2=[-170 0 120 0];
name=['pa     ','kpa    ','mpa    ','bar    ','mbar   ','kgf/cm2','cmH2O  ','mmH2O  ','mmHg   ','p.s.i  '];
r=[1,10^-3,10^-6,10^-5,10^-2,10.2*10^-6,1.02*10^-3,101.97*10^-3,7.5*10^-3,0.15*10^-3];
[z,kn]=size(name);
k=kn/7;
for n=1:k
    b(n)=uicontrol('style','text',...
        'string',name(7*n-6:7*n),...
        'position',p+n*d1+[0 0 250 0],...
        'FontSize',12,...
        'horizontalalignment','left');
    a(n)=uicontrol('style','edit',...
        'position',p+n*d1+d2,...
        'FontSize',12,...
        'horizontalalignment','right');
end
s=uicontrol('style','text',...
    'string','  ',...
    'position',[60 95 210 20]);
c=zeros(1,k);

set(a(1),'callback',['for f=1:k;','v=get(a(1),''string'');',...
    'b=str2num(v);',...
    'c(1)=b/r(1);',...
    'c(f)=c(1)*r(f);',...
    'b=num2str(c(f));',...
    'set(a(f),''string'',b);',...
    'end',...
    ]);
set(a(2),'callback',['for f=1:k;','v=get(a(2),''string'');',...
    'b=str2num(v);',...
    'c(1)=b/r(2);',...
    'c(f)=c(1)*r(f);',...
    'b=num2str(c(f));',...
    'set(a(f),''string'',b);',...
    'end',...
    ]);
set(a(3),'callback',['for f=1:k;','v=get(a(3),''string'');',...
    'b=str2num(v);',...
    'c(1)=b/r(3);',...
    'c(f)=c(1)*r(f);',...
    'b=num2str(c(f));',...
    'set(a(f),''string'',b);',...
    'end',...
    ]);
set(a(4),'callback',['for f=1:k;','v=get(a(4),''string'');',...
    'b=str2num(v);',...
    'c(1)=b/r(4);',...
    'c(f)=c(1)*r(f);',...
    'b=num2str(c(f));',...
    'set(a(f),''string'',b);',...
    'end',...
    ]);
set(a(5),'callback',['for f=1:k;','v=get(a(5),''string'');',...
    'b=str2num(v);',...
    'c(1)=b/r(5);',...
    'c(f)=c(1)*r(f);',...
    'b=num2str(c(f));',...
    'set(a(f),''string'',b);',...
    'end',...
    ]);
set(a(6),'callback',['for f=1:k;','v=get(a(6),''string'');',...
    'b=str2num(v);',...
    'c(1)=b/r(6);',...
    'c(f)=c(1)*r(f);',...
    'b=num2str(c(f));',...
    'set(a(f),''string'',b);',...
    'end',...
    ]);
set(a(7),'callback',['for f=1:k;','v=get(a(7),''string'');',...
    'b=str2num(v);',...
    'c(1)=b/r(7);',...
    'c(f)=c(1)*r(f);',...
    'b=num2str(c(f));',...
    'set(a(f),''string'',b);',...
    'end',...
    ]);
set(a(8),'callback',['for f=1:k;','v=get(a(8),''string'');',...
    'b=str2num(v);',...
    'c(1)=b/r(8);',...
    'c(f)=c(1)*r(f);',...
    'b=num2str(c(f));',...
    'set(a(f),''string'',b);',...
    'end',...
    ]);
set(a(9),'callback',['for f=1:k;','v=get(a(9),''string'');',...
    'b=str2num(v);',...
    'c(1)=b/r(9);',...
    'c(f)=c(1)*r(f);',...
    'b=num2str(c(f));',...
    'set(a(f),''string'',b);',...
    'end',...
    ]);
set(a(10),'callback',['for f=1:k;','v=get(a(10),''string'');',...
    'b=str2num(v);',...
    'c(1)=b/r(10);',...
    'c(f)=c(1)*r(f);',...
    'b=num2str(c(f));',...
    'set(a(f),''string'',b);',...
    'end',...
    ]);

Contact us at files@mathworks.com