报告题目: 通讯录管理系统
课程名称: 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_STATIC2||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(\用户名不正确!\ }
//////////////////////////置零////////////////////////////////////////////////////////
void CTest_323Dlg::OnReset()////置零按钮 {
m_user=\
m_password=\
UpdateData(FALSE); }
///////////////////////////////////////////////////////////////////////////
2主界面模块:
/////////////////各个按钮的响应函数///////////////////////////////////////////////
void CInterface::OnChangcode() //修改密码 { CChangcode code; code.DoModal(); }