caldytrol.m

来自「一个MATLAB计算器程序,图形界面的 ,不过有个小BUG希望大家能」· M 代码 · 共 658 行 · 第 1/2 页

M
658
字号
function button_minus_Callback(hObject, eventdata, handles)% hObject    handle to button_minus (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)handles.val1=str2num(get(handles.screen,'String'));
handles.opr='-';
handles.add=0;
handles.dot=0;
guidata(hObject,handles);
% --- Executes on button press in button_times.
function button_times_Callback(hObject, eventdata, handles)
% hObject    handle to button_times (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
handles.val1=str2num(get(handles.screen,'String'));
handles.opr='*';
handles.add=0;
handles.dot=0;
guidata(hObject,handles);

% --- Executes on button press in button_divide.
function button_divide_Callback(hObject, eventdata, handles)
% hObject    handle to button_divide (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
handles.val1=str2num(get(handles.screen,'String'));
handles.opr='/';
handles.add=0;
handles.dot=0;
guidata(hObject,handles);
% --- Executes on button press in button_sqrt.function button_sqrt_Callback(hObject, eventdata, handles)% hObject    handle to button_sqrt (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)result=sqrt(str2num(get(handles.screen,'String')));
set(handles.screen,'String',num2str(result));
handles.add=0;
handles.dot=0;
handles.opr='';
guidata(hObject,handles);% --- Executes on button press in pushbutton8.function pushbutton8_Callback(hObject, eventdata, handles)% hObject    handle to pushbutton8 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% --- Executes on button press in button_reciprocal.function button_reciprocal_Callback(hObject, eventdata, handles)% hObject    handle to button_reciprocal (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)result=1/(str2num(get(handles.screen,'String')));
set(handles.screen,'String',num2str(result));
handles.add=0;
handles.dot=0;
handles.opr='';
guidata(hObject,handles);

% --- Executes on button press in button_sign.
function button_sign_Callback(hObject, eventdata, handles)
% hObject    handle to button_sign (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
val=get(handles.screen,'String');
if(strcmp(val,'0')==0)
    if(val(1)=='-')
        val=strrep(val,'-','');
    else
        val=strcat('-',val);
    end
    set(handles.screen,'String',val);
end
% --- Executes on button press in button_clear.function button_clear_Callback(hObject, eventdata, handles)% hObject    handle to button_clear (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)handles.opr='';
handles.dot=0;
handles.add=1;
guidata(hObject,handles);
set(handles.screen,'String','Welcome to Dytrol.com');% --- Executes on button press in button_dot.function button_dot_Callback(hObject, eventdata, handles)% hObject    handle to button_dot (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)val=get(handles.screen,'String');
if(handles.dot==1)
    return;
end
handles.dot=1;
if(handles.add==1)
    val=strcat(val,'.');
else
    handles.add=1;
    val='0.';
end
set(handles.screen,'String',val);
guidata(hObject,handles);% --- Executes on button press in button_equal.function button_equal_Callback(hObject, eventdata, handles)% hObject    handle to button_equal (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)if(isempty(handles.opr))
    return;
end
handles.val2=str2num(get(handles.screen,'String'));

switch handles.opr
    case '+'
        result=handles.val1+handles.val2;
    case '-'
        result=handles.val1-handles.val2;
    case '*'
        result=handles.val1*handles.val2; 
    case '/'
        result=handles.val1/handles.val2;
end
set(handles.screen,'String',num2str(result));

handles.add=0;
handles.dot=0;
handles.opr'';
guidata(hObject,handles);
% --- Executes during object creation, after setting all properties.function popupmenu_color_CreateFcn(hObject, eventdata, handles)% hObject    handle to popupmenu_color (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    empty - handles not created until after all CreateFcns called% Hint: popupmenu controls usually have a white background on Windows.%       See ISPC and COMPUTER.if ispc    set(hObject,'BackgroundColor','white');else    set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));end% --- Executes on selection change in popupmenu_color.function popupmenu_color_Callback(hObject, eventdata, handles)% hObject    handle to popupmenu_color (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% Hints: contents = get(hObject,'String') returns popupmenu_color contents as cell array%        contents{get(hObject,'Value')} returns selected item from popupmenu_colorval=get(handles.popupmenu_color,'Value');
switch val
    case 1
        set(handles.screen,'BackgroundColor','yellow');
    case 2
        set(handles.screen,'BackgroundColor','magenta');           case 3
        set(handles.screen,'BackgroundColor','cyan');
    case 4
        set(handles.screen,'BackgroundColor','red');
    case 5
        set(handles.screen,'BackgroundColor','green');
    case 6
        set(handles.screen,'BackgroundColor','blue');
    case 7
        set(handles.screen,'BackgroundColor','white');
    case 8
        set(handles.screen,'BackgroundColor','black');
end
% --------------------------------------------------------------------function menuitem_screenbkcolor_Callback(hObject, eventdata, handles)% hObject    handle to menuitem_screenbkcolor (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA) 
%val=uisetcolor(get(handles.screen,'BackgroundColor'),'编辑框背景颜色')
%set(handles.screen,'BackgroundColor',val);
% --------------------------------------------------------------------
function yellow_Callback(hObject, eventdata, handles)
% hObject    handle to Untitled_1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(gcf,'color','yellow')%;

function magenta_Callback(hObject, eventdata, handles)
% hObject    handle to Untitled_1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(gcf,'color','magenta')%;

function cyan_Callback(hObject, eventdata, handles)
% hObject    handle to Untitled_1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(gcf,'color','cyan')%;

function red_Callback(hObject, eventdata, handles)
% hObject    handle to Untitled_1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(gcf,'color','red')%;

function green_Callback(hObject, eventdata, handles)
% hObject    handle to Untitled_1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(gcf,'color','green')%;

function blue_Callback(hObject, eventdata, handles)
% hObject    handle to Untitled_1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(gcf,'color','blue')%;

function black_Callback(hObject, eventdata, handles)
% hObject    handle to Untitled_1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
set(gcf,'color','black')%;
% --------------------------------------------------------------------function Untitled_1_Callback(hObject, eventdata, handles)% hObject    handle to Untitled_1 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% --------------------------------------------------------------------function Untitled_3_Callback(hObject, eventdata, handles)% hObject    handle to Untitled_3 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% --------------------------------------------------------------------function menuitem_about_Callback(hObject, eventdata, handles)% hObject    handle to menuitem_about (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)about;% --------------------------------------------------------------------function menuitem_dytrol_Callback(hObject, eventdata, handles)% hObject    handle to menuitem_dytrol (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)aboutus;% --------------------------------------------------------------------function theContextMenu_Callback(hObject, eventdata, handles)% hObject    handle to theContextMenu (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% --------------------------------------------------------------------function Untitled_10_Callback(hObject, eventdata, handles)% hObject    handle to Untitled_10 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% --------------------------------------------------------------------function Untitled_11_Callback(hObject, eventdata, handles)% hObject    handle to Untitled_11 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)% --------------------------------------------------------------------function Untitled_12_Callback(hObject, eventdata, handles)% hObject    handle to Untitled_12 (see GCBO)% eventdata  reserved - to be defined in a future version of MATLAB% handles    structure with handles and user data (see GUIDATA)

function varargout=OnKeydown(hObject,eventdata,handles,varargin)
key=get(hObject,'CurrentCharacter');
switch key
    case '0'
        button0_Callback(hObject,eventdata,handles,varargin);
    case '1'
        button1_Callback(hObject,eventdata,handles,varargin);
    case '2'
        button2_Callback(hObject,eventdata,handles,varargin);
    case '3'
        button3_Callback(hObject,eventdata,handles,varargin);        
    case '4'
        button4_Callback(hObject,eventdata,handles,varargin);
    case '5'
        button5_Callback(hObject,eventdata,handles,varargin);
    case '6'
        button6_Callback(hObject,eventdata,handles,varargin);
    case '7'
        button7_Callback(hObject,eventdata,handles,varargin);         
    case '8'
        button8_Callback(hObject,eventdata,handles,varargin);
    case '9'
        button9_Callback(hObject,eventdata,handles,varargin);
    case '.'
        button_dot_Callback(hObject,eventdata,handles,varargin);
    case '+'
        button_add_Callback(hObject,eventdata,handles,varargin); 
    case '-'
        button_minus_Callback(hObject,eventdata,handles,varargin);
    case '*'
        button_times_Callback(hObject,eventdata,handles,varargin);
    case '/'
        button_divide_Callback(hObject,eventdata,handles,varargin);
    case '='
        button_equal_Callback(hObject,eventdata,handles,varargin);         
    case 13
        button_equal_Callback(hObject,eventdata,handles,varargin);       
end

⌨️ 快捷键说明

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