详细版C++MFC通讯录课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
报告题目:通讯录管理系统
课程名称:C++面向对象程序设计
学院信息工程学院
专业班级 ******************
学号 ************
姓名 323的锋锋
联系方式 ****************
任课教师 **************
2013 年6月13日
一、课程目的:
1、使学生进一步巩固《面向对象程序设计》课程中的基本概念、理论、分
析方法和实现方法;
2、熟悉VC++等编译环境,掌握应用VC++开发软件的基本技能。增强学生
软件开发能力;
3、尝试将所学的内容解决实际工程问题,培养学生的工程实践能力。
二、设计题目。
1、设计一个简易的通讯录管理软件,能够维护、查询、管理通讯录的基本信息。
2、具有信息维护功能:通讯录名单及相关信息的添加、删除等功能。其中通讯录名单的信息包括姓名、电话号码、工作单位、称呼、通信地址等。
3、具有信息查询功能:实现按姓名、电话号码、工作单位、称呼、通信地址等信息进行查询。
4、定义一个通讯类,其中包含姓名、电话号码、工作单位、称呼、通信地址等数据成员,同时包含修改,删除等成员函数。
三、设计内容。
1、任务概况。
系统将每个学生的基本信息可以实现添加、删除、修改、查询功能。
2、具备功能。
(1)分类显示联系人信息
(2)添加、删除、修改联系人信息
(3)可以按关键字查找联系人
3、整体框图。
4、主要模块代码。
1,登录模块:
在void CTest_323Dlg::OnPaint() /////////添加新的代码用于美化登录////界面
CPaintDC dc(this);
CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP1); //这个IDB_BITMAP1要自己添加
CBrush brush;
brush.CreatePatternBrush(&bitmap);
CBrush* pOldBrush = dc.SelectObject(&brush);
int cx, cy;
cx = GetSystemMetrics(SM_CXSCREEN);
cy = GetSystemMetrics(SM_CYSCREEN);
dc.Rectangle(0,0,cx,cy); // 这些参数可以调整图片添加位置和大小
dc.SelectObject(pOldBrush);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//添加这个///OnCtlColor函数////////改变界面字体属性
HBRUSH CTest_323Dlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor){ HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if(pWnd->GetDlgCtrlID()==IDC_STATIC1)
{
pDC->SetTextColor(RGB(255,0,0));//字体颜色
pDC->SetBkColor(RGB(0,0,255));//字体背景色
return (HBRUSH)::GetStockObject(WHITE_BRUSH);//设置背景色
}
else
if(pWnd->GetDlgCtrlID()==IDC_STA TIC2||pWnd->GetDlgCtrlID()==IDC_STATIC3)
{
pDC->SetTextColor(RGB(0,0,0));//字体颜色
return (HBRUSH)::GetStockObject(WHITE_BRUSH);//设置背景色
}
else
return hbr;
}
///////////////////////登录按钮/////////////////////////////////////////////////////////////
void CTest_323Dlg::OnEnter()
{
UpdateData(TRUE);
CTest_323Dlg pt;
if (m_user.IsEmpty() || m_password.IsEmpty())
MessageBox("用户名或密码不能为空", "用户登录信息");
else
if (m_user==pt.m_user1&&m_password==pt.m_password1)
{
OnReset();
UpdateData(FALSE);
CDialog::OnOK();////////////调用低层OnOK()函数,销毁对话框
CInterface inface;
inface.DoModal();
}
else
if(m_user==pt.m_user1&&m_password!=pt.m_password1)
MessageBox("密码不正确!");
else
if(m_user!=pt.m_user1&&m_password!=pt.m_password1)
MessageBox("用户名和密码都不正确!");
else
MessageBox("用户名不正确!"); }