《面向对象程序设计》课程设计1050303061—吕思超(6)

2019-06-17 12:45

}

6)做一个查询学生信息窗口类CQueryStudentDlg类:

代码:// QueryStudentDlg.cpp : implementation file //

#include \#include \#include \#include \#ifdef _DEBUG

#define new DEBUG_NEW #undef THIS_FILE

static char THIS_FILE[] = __FILE__; #endif

///////////////////////////////////////////////////////////////////// // CQueryStudentDlg dialog

CQueryStudentDlg::CQueryStudentDlg(CWnd* pParent /*=NULL*/) { }

//{{AFX_DATA_INIT(CQueryStudentDlg) m_QueryText = _T(\//}}AFX_DATA_INIT

: CDialog(CQueryStudentDlg::IDD, pParent)

26

void CQueryStudentDlg::DoDataExchange(CDataExchange* pDX) { }

BEGIN_MESSAGE_MAP(CQueryStudentDlg, CDialog)

//{{AFX_MSG_MAP(CQueryStudentDlg)

ON_COMMAND(ID_MANAGE_QUERY, OnManageQuery) ON_BN_CLICKED(IDC_BUTTON_Query, OnBUTTONQuery) //}}AFX_MSG_MAP

CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CQueryStudentDlg)

DDX_Control(pDX, IDC_LIST_Query, m_listQuery); DDX_Control(pDX, IDC_COMBO_QueryType, m_QueryType); DDX_Text(pDX, IDC_EDIT_QueryText, m_QueryText); //}}AFX_DATA_MAP

END_MESSAGE_MAP()

///////////////////////////////////////////////////////////////////// // CQueryStudentDlg message handlers

void CQueryStudentDlg::OnManageQuery() { }

BOOL CQueryStudentDlg::OnInitDialog()

// TODO: Add your command handler code here CQueryStudentDlg dlgQuery; dlgQuery.DoModal();

27

{

CDialog::OnInitDialog();

// TODO: Add extra initialization here m_listQuery.InsertColumn(0,\学号\m_listQuery.InsertColumn(1,\姓名\m_listQuery.InsertColumn(2,\性别\m_listQuery.InsertColumn(3,\年龄\m_listQuery.InsertColumn(4,\籍贯\m_listQuery.InsertColumn(5,\联系电话\m_listQuery.InsertColumn(6,\家庭地址\m_listQuery.InsertColumn(7,\m_listQuery.InsertColumn(8,\电子邮箱\

m_listQuery.SetColumnWidth(0,80); m_listQuery.SetColumnWidth(1,80); m_listQuery.SetColumnWidth(2,60); m_listQuery.SetColumnWidth(3,60); m_listQuery.SetColumnWidth(4,100); m_listQuery.SetColumnWidth(5,100); m_listQuery.SetColumnWidth(6,100); m_listQuery.SetColumnWidth(7,100); m_listQuery.SetColumnWidth(8,100);

m_listQuery.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINE

S);

CStudentDoc doc;

m_v=doc.GetStudentList();

return TRUE; // return TRUE unless you set the focus to a control

28

}

// EXCEPTION: OCX Property Pages should return FALSE

void CQueryStudentDlg::OnBUTTONQuery() {

// TODO: Add your control notification handler code here CString strQueryType; UpdateData(true);

m_QueryType.GetWindowText(strQueryType);

int vSize=(int) m_v.size(); int i=0;

if (m_listQuery.GetItemCount()!=0) { }

int itemCount=0;

if (strQueryType==\学号\{

for (i=0;i

if (m_v[i]->GetStuNo()==m_QueryText) {

CString strAge;

strAge.Format(\

m_listQuery.InsertItem(itemCount,m_v[i]->GetStuNo());

m_listQuery.DeleteAllItems();

m_listQuery.SetItemText(itemCount,1,m_v[i]->GetStuName());

m_listQuery.SetItemText(itemCount,2,m_v[i]->GetSex());

29

m_listQuery.SetItemText(itemCount,3,strAge);

m_listQuery.SetItemText(itemCount,4,m_v[i]->GetNative());

m_listQuery.SetItemText(itemCount,5,m_v[i]->GetHomeAddress());

m_listQuery.SetItemText(itemCount,6,m_v[i]->GetTelephone());

m_listQuery.SetItemText(itemCount,7,m_v[i]->GetQQ());

m_listQuery.SetItemText(itemCount,8,m_v[i]->GetEmail()); }

else if (strQueryType==\姓名\{

}

}

itemCount++;

//自己添加

}

else if (strQueryType==\性别\{ }

else if (strQueryType==\年龄\{ }

else if (strQueryType==\籍贯\{

//自己添加 //自己添加 //自己添加

30

}

}

4.设计结果及体会

通过本次课程设计,使我对c++面向对象程序设计和MFC有了更深层次的认识和理解,懂得了灵活用于所学的知识解决实际问题。在计算机飞速发展的今天,懂得一门计算机语言是非常有必要的。

C++的课程设计培养了我们独立分析问题、解决问题、繁阅资料及自学能力。通过此次课程设计,让我明白了巩固专业知识的重要性。

5.参考文献

教材:

谭浩强编著. C++面向对象程序设计.北京:清华大学出版社,2006年1月出版

参考书:

[1]孙鑫,余安萍.VC++深入详解[M].北京:电子工业出版社,2006年出版 [2] 郑莉、傅仕星编,《C++面向对象程序设计》,清华大学出版社,2003年9月出版

[3] 李师贤等译,《C++精髓》,机械工业出版社,2002年8月出版 [4] Davis Chapman,《学用Visual c++ 6.0》,清华大学出版社,2001年7月出版

[5] 郑莉、傅仕星编,C++语言面向对象程序设计习题与实验指导,清华大

学出版社,2003年9月出版。

31


《面向对象程序设计》课程设计1050303061—吕思超(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:提高全线温湿度及冷水系统处理效率 完整报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: