1、 功能介绍:此小软件能调整时间,以钟表方式显示时间,设置闹钟能打开或者关闭闹钟,并且记录历史调节过的前5个闹钟,提供方便再使用曾经用过的闹钟。 界面布局:见下图 创建过程: 1 加入如图的各种控件;安排好位置,点击Align Objects按钮对控件对齐。 2 改变各控件相关的属性值: 的string都改为0,并将其将坐标文本框下面的三个可编辑文本 1数学软件课程设计 tag属性分别改为hour、min、sec。以便在添加代码时能更快找到对应函数。坐标文本框旁边的三个可编辑文本的string都改为 ,并将其tag属性分别改为hour _naozhong、min _naozhong、sec _n
2、aozhong。 将这四个静态文本框的String改为:。 将坐标文本框右上角的静态文本框的string改为。将坐标文本框左下角的静态文本框文本框的string改为修正时间:将历史闹钟显示的2个静态的string分别改为历史闹钟:、时-分-秒。将数字的string分别改为1.、2.、3.、4.、5.。的string都改为 。并将其tag标号的5个静态文本框将历史闹钟的5个静态文本框属性分别改为naozhong1、naozhong2、naozhong3、naozhong4、naozhong5,以便在添加代码时能更快找到对应函数。将坐标文本框右上角的静态文本框关闭闹钟。 将坐标文本框下面3个按钮的
3、string都改为,并将其tag的string改为 。用以提示是否开启或者属性分别改为hour_up、min_up、sec_up,以便在添加代码时能更快找到对应函数。将坐标文本框下面3个按钮的string都改为,并将其tag属性分别改为hour_down、min_down、sec_down,以便在添加代码时能更快找到对应函数。将按钮的string都改为确认修改,并将其tag属性分别改为 queren_time, 以便在添加代码时能更快找到对应函数。将坐标文本框右边2个按钮的string分别改为打开、关闭,并将其tag属性分别改为 2数学软件课程设计 open_naozhong、 off_nao
4、zhong, 以便在添加代码时能更快找到对应函数。将历史闹钟下面的5个按钮的string都改为设此为新闹钟,并将其tag属性分别改为 xinnaozhong1、 xinnaozhong2 、 xinnaozhong3 、 xinnaozhong4 、 xinnaozhong5 , 以便在添加代码时能更快找到对应函数。 将静态文本框的backgroundcolor改为灰色。 完成以上过程后,保存GUI为时钟与闹钟.fig。 3. 编写回调函数代码:黄色显示部分为自己添加的代码,紫色为函数的名称。 以下是主调函数的编辑: function naozhong_OpeningFcn(hObject,
5、eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObjecthandle to figure % eventdata reserved - to be defined in a future version of MATLAB % handlesstructure with handles and user data (see GUIDATA) % varargin command line arguments to naozhong (see VARARGIN) % Cho
6、ose default command line output for naozhong = hObject; =cell(1,5); %记录历史闹钟的排序 % Update handles structure guidata(hObject, handles); 以下是3个调节时间增加的按钮的编码: 小时: function hour_up_Callback(hObject, eventdata, handles) % hObjecthandle to hour_up (see GCBO) % eventdata reserved - to be defined in a future ve
7、rsion of MATLAB % handlesstructure with handles and user data (see GUIDATA) a=str2num(get(,string); %小时按键控制,若上调大于等于24,侧变回凌晨 a=a+1; 3数学软件课程设计 if a=24a=0; end set(,string,a) guidata(hObject, handles); 分钟: function min_up_Callback(hObject, eventdata, handles) % hObjecthandle to min_up (see GCBO) % even
8、tdata reserved - to be defined in a future version of MATLAB % handlesstructure with handles and user data (see GUIDATA) M=str2num(get(,string);H=str2num(get(,string);M=M+1; if M=60 %分钟按键控制,若上调大于等于60,侧变回0,并且小时进1M=0;H=H+1; if H=24 %小时进1时,若大于等于24,则小时变回0 H=0;end set(,string,H) end set(,string,M) guidat
9、a(hObject, handles); 秒钟: function sec_up_Callback(hObject, eventdata, handles) % hObjecthandle to sec_up (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handlesstructure with handles and user data (see GUIDATA) S=str2num(get(,string); M=str2num(get(,string); H=str2num
10、(get(,string); S=S+1; if S=60%秒的按键控制,若大于等于60,则分钟进1,秒变回0S=0;=60 %分钟进1时,若分钟大于等于60,则小时进1,分钟变回0 M=0; H=H+1; end set(,string,H)end set(,string,M) end 4数学软件课程设计 set(,string,S) guidata(hObject, handles); function hour_down_Callback(hObject, eventdata, handles) % hObjecthandle to hour_down (see GCBO) % even
11、tdata reserved - to be defined in a future version of MATLAB % handlesstructure with handles and user data (see GUIDATA) H=str2num(get(,string); %小时按键控制,若上调小于0,侧变回23H=H-1; if Hset(,string,H) guidata(hObject, handles); function min_dowm_Callback(hObject, eventdata, handles) % hObjecthandle to min_dow
12、m (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handlesstructure with handles and user data (see GUIDATA) M=str2num(get(,string); M=M-1; if Mif Hset(,string,H) end set(,string,M) guidata(hObject, handles); % - Executes on button press in sec_dowm. function sec_dowm_
13、Callback(hObject, eventdata, handles) % hObjecthandle to sec_dowm (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handlesstructure with handles and user data (see GUIDATA) S=str2num(get(,string); S=S-1; 5数学软件课程设计 if Sif Mif H=-1%若小时减1时,小时小于0,则,小时变回23 H=23; end set(,string,H)end set(,string,M) end
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1