⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.m

📁 自己写的MATLAB GUI单位转换器
💻 M
字号:
function main

close all;clear all; clc;
set(gcf,'menubar','none','NumberTitle','off','Name','Units Convertor');

hgroup = uibuttongroup('visible','off','Position',[0 0.9 1 0.1],'SelectionChangeFcn',@selbck);

u0 = uicontrol('Style','Radio','Units','Normalized','FontSize',12,'FontWeight','bold','String','Length', 'pos',[0.01 0.2 0.2 0.5],'parent',hgroup);
u1 = uicontrol('Style','Radio','Units','Normalized','FontSize',12,'FontWeight','bold','String','Area', 'pos',[0.25 0.2 0.2 0.5],'parent',hgroup);
u2 = uicontrol('Style','Radio','Units','Normalized','FontSize',12,'FontWeight','bold','String','Weight', 'pos',[0.49 0.2 0.2 0.5],'parent',hgroup);
u3 = uicontrol('Style','Radio','Units','Normalized','FontSize',12,'FontWeight','bold','String','Volume', 'pos',[0.73 0.2 0.2 0.5],'parent',hgroup);
set(hgroup,'Visible','on');

setappdata(gcf,'myoption',1);  % it is used to decide which classification is selected

hPanel = uipanel('Parent',gcf,'BackgroundColor','w','Position',[0 0 1 0.9]);

hE1 = uicontrol('Parent',hPanel,'Style','edit','Units','Normalized','FontSize',12,'HorizontalAlignment',...
                'right','String',' ','Position',[0.05 0.85 0.25 0.08],'Callback',['option = getappdata(gcf,''myoption'');',...
                'h = getappdata(gcf,''hE1'');','val = str2double(get(h,''string''));','eval(''doconvert(val,1,option)'');']);
            
hE2 = uicontrol('Parent',hPanel,'Style','edit','Units','Normalized','FontSize',12,'HorizontalAlignment',...
                'right','String',' ','Position',[0.55 0.85 0.25 0.08],'Callback',['option = getappdata(gcf,''myoption'');',...
                'h = getappdata(gcf,''hE2'');','val = str2double(get(h,''string''));','eval(''doconvert(val,2,option)'');']);
            
hE3 = uicontrol('Parent',hPanel,'Style','edit','Units','Normalized','FontSize',12,'HorizontalAlignment',...
                'right','String',' ','Position',[0.05 0.7 0.25 0.08],'Callback',['option = getappdata(gcf,''myoption'');',...
                'h = getappdata(gcf,''hE3'');','val = str2double(get(h,''string''));','eval(''doconvert(val,3,option)'');']);
            
hE4 = uicontrol('Parent',hPanel,'Style','edit','Units','Normalized','FontSize',12,'HorizontalAlignment',...
                'right','String',' ','Position',[0.55 0.7 0.25 0.08],'Callback',['option = getappdata(gcf,''myoption'');',...
                'h = getappdata(gcf,''hE4'');','val = str2double(get(h,''string''));','eval(''doconvert(val,4,option)'');']);
            
hE5 = uicontrol('Parent',hPanel,'Style','edit','Units','Normalized','FontSize',12,'HorizontalAlignment',...
                'right','String',' ','Position',[0.05 0.55 0.25 0.08],'Callback',['option = getappdata(gcf,''myoption'');',...
                'h = getappdata(gcf,''hE5'');','val = str2double(get(h,''string''));','eval(''doconvert(val,5,option)'');']);
            
hE6 = uicontrol('Parent',hPanel,'Style','edit','Units','Normalized','FontSize',12,'HorizontalAlignment',...
                'right','String',' ','Position',[0.55 0.55 0.25 0.08],'Callback',['option = getappdata(gcf,''myoption'');',...
                'h = getappdata(gcf,''hE6'');','val = str2double(get(h,''string''));','eval(''doconvert(val,6,option)'');']);
            
hE7 = uicontrol('Parent',hPanel,'Style','edit','Units','Normalized','FontSize',12,'HorizontalAlignment',...
                'right','String',' ','Position',[0.05 0.4 0.25 0.08],'Callback',['option = getappdata(gcf,''myoption'');',...
                'h = getappdata(gcf,''hE7'');','val = str2double(get(h,''string''));','eval(''doconvert(val,7,option)'');']);
            
hE8 = uicontrol('Parent',hPanel,'Style','edit','Units','Normalized','FontSize',12,'HorizontalAlignment',...
                'right','String',' ','Position',[0.55 0.4 0.25 0.08],'Callback',['option = getappdata(gcf,''myoption'');',...
                'h = getappdata(gcf,''hE8'');','val = str2double(get(h,''string''));','eval(''doconvert(val,8,option)'');']);
            
hE9 = uicontrol('Parent',hPanel,'Style','edit','Units','Normalized','FontSize',12,'HorizontalAlignment',...
               'right','String',' ','Position',[0.05 0.25 0.25 0.08],'Callback',['option = getappdata(gcf,''myoption'');',...
                'h = getappdata(gcf,''hE9'');','val = str2double(get(h,''string''));','eval(''doconvert(val,9,option)'');']);
           
hE10 = uicontrol('Parent',hPanel,'Style','edit','Units','Normalized','FontSize',12,'HorizontalAlignment',...
                 'right','String',' ','Position',[0.55 0.25 0.25 0.08],'Callback',['option = getappdata(gcf,''myoption'');',...
                'h = getappdata(gcf,''hE10'');','val = str2double(get(h,''string''));','eval(''doconvert(val,10,option)'');']);
             

setappdata(gcf,'hE1',hE1);
setappdata(gcf,'hE2',hE2);
setappdata(gcf,'hE3',hE3);
setappdata(gcf,'hE4',hE4);
setappdata(gcf,'hE5',hE5);
setappdata(gcf,'hE6',hE6);
setappdata(gcf,'hE7',hE7);
setappdata(gcf,'hE8',hE8);
setappdata(gcf,'hE9',hE9);
setappdata(gcf,'hE10',hE10);

hS1 = uicontrol('Parent',hPanel,'Style','text','Units','Normalized','FontSize',12,'HorizontalAlignment','left',...
                'String','m','BackgroundColor','w','Position',[0.31 0.855 0.2 0.06]);
hS2 = uicontrol('Parent',hPanel,'Style','text','Units','Normalized','FontSize',12,'HorizontalAlignment','left',...
                'String','dm','BackgroundColor','w','Position',[0.81 0.855 0.2 0.06]);
hS3 = uicontrol('Parent',hPanel,'Style','text','Units','Normalized','FontSize',12,'HorizontalAlignment','left',...
                 'String','cm','BackgroundColor','w','Position',[0.31 0.705 0.2 0.06]);
hS4 = uicontrol('Parent',hPanel,'Style','text','Units','Normalized','FontSize',12,'HorizontalAlignment','left',...
                'String','mm','BackgroundColor','w','Position',[0.81 0.705 0.2 0.06]);
hS5 = uicontrol('Parent',hPanel,'Style','text','Units','Normalized','FontSize',12,'HorizontalAlignment','left',...
                'String','km','BackgroundColor','w','Position',[0.31 0.555 0.2 0.06]);
hS6 = uicontrol('Parent',hPanel,'Style','text','Units','Normalized','FontSize',12,'HorizontalAlignment','left',...
                'String','foot','BackgroundColor','w','Position',[0.81 0.555 0.2 0.06]);
hS7 = uicontrol('Parent',hPanel,'Style','text','Units','Normalized','FontSize',12,'HorizontalAlignment','left',...
                'String','yard','BackgroundColor','w','Position',[0.31 0.405 0.2 0.06]);
hS8 = uicontrol('Parent',hPanel,'Style','text','Units','Normalized','FontSize',12,'HorizontalAlignment','left',...
                'String','inch','BackgroundColor','w','Position',[0.81 0.405 0.2 0.06]);
hS9 = uicontrol('Parent',hPanel,'Style','text','Units','Normalized','FontSize',12,'HorizontalAlignment','left',...
                'String','mni','BackgroundColor','w','Position',[0.31 0.255 0.2 0.06]);
hS10 = uicontrol('Parent',hPanel,'Style','text','Units','Normalized','FontSize',12,'HorizontalAlignment','left',...
                 'String','mile','BackgroundColor','w','Position',[0.81 0.255 0.2 0.06]);

setappdata(gcf,'hS1',hS1);
setappdata(gcf,'hS2',hS2);
setappdata(gcf,'hS3',hS3);
setappdata(gcf,'hS4',hS4);
setappdata(gcf,'hS5',hS5);
setappdata(gcf,'hS6',hS6);
setappdata(gcf,'hS7',hS7);
setappdata(gcf,'hS8',hS8);
setappdata(gcf,'hS9',hS9);
setappdata(gcf,'hS10',hS10);

hReset = uicontrol('Parent',hPanel,'Units','Normalized','Style','pushbutton','String','Reset','FontSize',12,'Position',[0.25 0.1 0.2 0.1],'Callback',@reset);
hClose = uicontrol('Parent',hPanel,'Units','Normalized','Style','pushbutton','String','Close','FontSize',12,'Position',[0.5 0.1 0.2 0.1],'Callback',@closeclk);
uicontrol('Parent',hPanel,'Units','Normalized','Style','text','BackgroundColor',[0.5 0.5 0.5],'String','Email: deng_21834@163.com','FontSize',12,'Position',[0.2 0 0.6 0.06]);

%callback function for reset pushbutton
function reset(hObject,eventdata)

hE1 = getappdata(gcf,'hE1');
hE2 = getappdata(gcf,'hE2');
hE3 = getappdata(gcf,'hE3');
hE4 = getappdata(gcf,'hE4');
hE5 = getappdata(gcf,'hE5');
hE6 = getappdata(gcf,'hE6');
hE7 = getappdata(gcf,'hE7');
hE8 = getappdata(gcf,'hE8');
hE9 = getappdata(gcf,'hE9');
hE10 = getappdata(gcf,'hE10');

clearall([hE1 hE2 hE3 hE4 hE5 hE6 hE7 hE8 hE9 hE10]);   %call func clearall

return;

%callback function for close pushbutton
function closeclk(hObject,eventdata)

ch = questdlg('Are you sure to close the Units Convertor?','Warning'); 
if(strcmp(ch,'Yes'))
    delete(gcf)
end
return

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -