主函数,负责界面的设置
clc
clear
close all
input = 0;
balance = 500;
hfig = figure('pos',[100,100,300,300]);
withdrawButton = uicontrol('parent',hfig,'string','withdraw','pos',[60,28,60,28]);
depositButton = uicontrol('parent',hfig,'string','deposit','pos',[180,28,60,28]);
inputBox = uicontrol('parent',hfig,'style','edit','string',num2str(input),'pos',[60,85,180,28],...
'tag','inputbox');
balanceBox = uicontrol('parent',hfig,'style','edit','string',num2str(balance),'pos',[180,142,60,28],...
'tag','balancebox');
textBox = uicontrol('parent',hfig,'style','text','string','balance','pos',[60,142,60,28]);
set(withdrawButton,'callback',@(o,e)withdraw_callback(o,e));
set(depositButton,'callback',@(o,e)deposit_callback(o,e));
回调函数1
function withdraw_callback(o,e)
hfig = get(o,'parent');
inputBox = findobj(hfig,'tag','inputbox');
input = str2double(get(inputBox,'string'));
balanceBox = findobj(hfig,'tag','balancebox');
balance = str2double(get(balanceBox,'string'));
balance = balance - input;
set(balanceBox,'string',num2str(balance));
end
回调函数2
function deposit_callback(o,e)
hfig = get(o,'Parent');
inputBox = findobj(hfig,'Tag','inputbox');
input = str2double(get(inputBox,'string'));
balanceBox = findobj(hfig,'Tag','balancebox');
balance = str2double(get(balanceBox,'string'));
balance = balance + input;
set(balanceBox,'string',num2str(balance));
end
编写完成后的效果图如下