- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
试验三.备忘录
试验规定:
用VC++实現备忘录小程序,可以设定事件告知信息,并按照设定的時间进行事件告知,详细规定如下:
1.界面友好,美观大方;
2.支持事件的录入,包括時间、事件、备注信息等;
3.支持在设定的時间进行事件提醒;
4.支持对已录入事件大的查看、修改和删除;
5.其他更多功能,可根据状况自行添加。
題目分析:由題意可知,建立备忘录小程序需要操作的对象是“事件”和“事件列表”。因此,我們建立了事件类(classEvent)和事件链表类(classEventList)。如下是对类的详细分析:
事件类的组员变量中应当包括如下信息:
◆内容(content)
◆标识符用以唯一标识(id)
◆与否设置提醒(reminder)
◆事件提醒時间(time)
◆标題(title)
对应组员变量的组员函数有:
Event():构造一种空事件
getContent():获得事件内容
getOleTime():获得COleDateTime对象的時间
getReminder():获得与否提醒
getTime():获得字符串格式時间
getTitle():获得标題
setContent(..),setID(..),setReminder(..),setTime(..),setTitle(..)分别设置内容,ID,提醒,時间,和标題。
创立一种事件的详细过程:
1.申明一种事件Event对象,调用默认构造函数。
2.根据顾客输入调用对应的set函数給事件组员变量赋值。需要注意的是:content,id,tiltle都是CString类对象,而time是COleDateTime对象。
3.调用setIDAuto()函数,給该事件自动加上ID,ID对应着目前時间点。如下是setIDAuto的详细实現代码:
voidsetIDAuto()
{
COleDateTimecur_time;
cur_time.GetCurrentTime();
intday=cur_time.GetDay();
intmonth=cur_time.GetMonth();
intyear=cur_time.GetYear();
intminute=cur_time.GetMinute();
inthour=cur_time.GetHour();
intsecond=cur_time.GetSecond();
//根据目前時间设定ID
id.Format(_T(%.4d-%.2d-%.2d%.2d:%.2d:%.2d),year,month,day,hour,minute,second);
}
下面是对事件链表类EventList的分析:
首先引入STL中的vector类,為事件构造一种向量(动态数组)。語句為:
std::vectorEventevent_vector
而该类的所有操作都是围绕着这个事件向量进行的。
如下是对组员变量的讲解:
Eventleft_event:标识既将发生事件,在背面的【事件提醒】有详细简介。
intsize:记录目前的事件数量
组员函数:
addEvent:添加事件
check():检查left_event与否抵达提醒時间
deleteEvent:从id或下标删除事件
GetEvent:从下标获取事件
getLeftEvent:设置left_event,并返回它
getSize:或取目前事件数
Read:从传入途径读取文献,获取已保留事件数据
Save:从传入途径写入文献
如下是添加一种事件的流程:
创立事件
调用EventList的组员函数addEvent添加事件
程序共含两个窗体:既主窗体和事件添加编辑窗体。如下是窗体截图:
两个窗体分别為两个类,其中主窗体类名為CbeiwangluDlg,包括如下私有组员。
Cur_event:一种事件对象,新建和编辑对象時用的临時变量
event_list:事件链表,伴伴随窗体的生命周期
left_event:保留既将发生的事件
事件添加编辑窗体类為CNewEventDlg,类关系图為:
如下是对该类的组员变量进行阐明:
Event*cur_event:保留一种事件指针,而该类的所有操作均是对该指针所指向的对象进行操作
BoolifEdit:判断与否為编辑窗口,默认是添加事件窗口
EventContext:事件内容,和一种EditBox绑定
EventID:事件ID,自动设置
EventReminder:事件与否提醒,和一种CheckBox绑定
EventTitle:事件标題,与一种EditBox绑定
SelectedTime:和一种CDateTimeCtrl控件绑定,用以获得
文档评论(0)