9299.net
大学生考试网 让学习变简单
当前位置:首页 >> >>

VC++课程设计报告球员管理系统_图文

VC++课程设计报告球员管理系统_图文

江 苏 师 范 大 学 科 文 学 院

本 科 生 课 程 设 计

课 程 名 称: VC++程序设计 题 目: 球员基本信息管理系统 10 电信 2 徐 晨 阳

专 业 班 级: 学 生 姓 名: 学 生 学 号: 日 期:

108326235 2013-1-12 李 全 彬

指 导 教 师:

科文学院教务部印制

一、课程设计目的、任务和内容要求:
足球作为世界第一运动,已经吸引了原来越多的人的关注,参与。各种俱乐部的 成立在很大程度上促进了足球的发展,以及职业化,现在足球已经成为一种产业,而 运动员是足球的核心,因此球队中对运动员的科学化管理,已经成为一种必需,科学 化,人性化的管理可以增强他们的责任感,刺激他们的比赛热情,减少优秀运动员的 流失,以及吸引顶尖球星的到来,对于一个俱乐部球探,需要一套科学的系统来记录, 分析统计球员的信息和状态,给予他们客观的评价以向俱乐部老板汇报工作。球队管 理系统具有这些的功能,球员信息:它可以可以查看,修改,删除球员的各种信息。 通过统计分析方法,结合球员的状况和足球的规律性,发现问题,辅助球队管理。尽 管足球运动中变化和偶然性占有一定比重,但其内部的规律是不可否认的,我国的足 球产业还不发达,这不是一朝一夕可以提高的,因此必须从科学化管理出发,才能逐 步提高俱乐部的比赛成绩,以及运作,从而提高整个产业的发展。 要建立这个管理系统,需要经过从零开始的分析,了解现有的工作流程,并将其 人工操作事物流程用计算机来实现,信息管理系统的设计本身就是一项负责的系统工 程,要制定规划,成立强有力的实施机构,加强对相关人员的培训教育,制订并执行 严格的管理制度,球队管理的工作量大,而系统的可靠性,稳定性,安全性都至关非 常重要。 具体设计任务如下: 1.熟悉 VC++编程原理; 2.写出此管理系统设计方案; 3.用计算机加以实现; 4.写课程设计报告。 设计要求: 设计一个球员基本信息管理系统。要求: 1. 登陆此系统需要正确的用户名和密码 2. 此系统可完成浏览信息,添加信息,删除信息,查询信息等功能

二、进度安排:
第1~3 天: 查找资料,熟悉 VC++管理系统的设计原理,给出设计总体方案; 第 4~6 天: 各模块的详细设计;

第 7~12 天: 搜集美化素材; 第 13~14 天:写课程设计报告。

三、主要参考文献:
[1] 郑阿奇主编,丁有和编著.《Visual C++教程》[M]. 北京: 机械工程出版社,2012 [2] 郑莉,董渊,何江舟编著.《C++语言程序设计》 (第四版)[M]. 北京:清华大学出 版社,2010

指导教师签字: 年 月 日

目 录
摘 要 ………………………………………………………………………………………..Ⅰ Abstract …………………………………………………………………………………... ....Ⅰ 1 课题背景………………….…………………….…………………………………….... ....1 1.1 系统背景 ………………………………………………………………………………...1 1.2 设计此系统的目的. ……………………………………..…………………………….. 1 1.3 球员信息系统可行性分析……………………………………………………………….2 2 本系统关键技术简介………………………………………………………………………3 2.1 VC++介绍 ………………………………………………..………………………….…...3 2.2 ODBC 介绍……………………………………………..………………………….….......3 3 球员信息系统的实现与测试………………………………………………………………5 3.1 登录模块和系统主界面设计…………………………..………………………….…....5 3.2 系统功能的实现………………………………………..………………………….…....7 4 部分模块的详细设计………………………………………………………………………9 4.1 登录对话框的设计………………………….………………………………..….…..........9 4.2 登录对话框的美化………………………………………..………………………….….12 5 总 结 ……..…………………………………………………..…………………………....14 参考文献 …….………………..………………………………..…………………………....15 致谢.....…….………………..………………………………..………………………….... ....16 附录...............………...………………………………..………………………….... …... …..17

江苏师范大学物理与电子工程学院课程设计报告





足球作为世界第一运动,已经吸引了越来越多的人的关注与参与。为了提升球队管 理工作的整体水平,特编译了这个球队信息管理系统。该系统实现了队员的基本情况, 的信息系统,将球队管理工作各部分连成一个完整的数据整体。该系统是采用 VC++6.0 软件开发的,采用了 ODBC 接口,具有可移植性和封装的特色。文章首先简要叙述了系 统的开发背景及其开发目的,然后结合现代话的信息系统建设思想架构出信息系统模型, 紧接着便是系统实施,最后是对整个系统作出评价。

关键词:球队管理;面向对象;信息系统;

Visual C++;Access;ODBC;

Abstract
As the world's first campaign,football has attracted more and more people's concern and participation. To upgrade the whole level of the football player management, I’ve given the translation of the football player management information system specifically. The system realizes the basic situation of the player’s normal information, Management players will be part of the company as a whole integrity of the data. The system is based on VC++6.0 software development using the ODBC interface, with portability and encapsulation features. The article briefly describes the background to the development of the system and its development purposes, to analyze the information from the players, combined with modern information systems so building up information systems structure model is the implementation of the system followed, And, is the evaluated of the entire system. Keywords: football player management; VC++6.0;ODBC; Information Systems;

-I-

江苏师范大学物理与电子工程学院课程设计报告

1 课题背景
1.1 系统背景
足球作为世界第一运动,已经吸引了原来越多的人的关注,参与。各种俱乐部的成 立在很大程度上促进了足球的发展,以及职业化,现在足球已经成为一种产业,而运动 员是足球的核心,因此球队中对运动员的科学化管理,已经成为一种必需,科学化,人 性化的管理可以增强他们的责任感,刺激他们的比赛热情,减少优秀运动员的流失,以 及吸引顶尖球星的到来,对于一个俱乐部球探,需要一套科学的系统来记录,分析统计 球员的信息和状态,给予他们客观的评价以向俱乐部老板汇报工作。球队管理系统具有 这些的功能,球员信息:它可以可以查看,修改,删除球员的各种信息。通过统计分析 方法,结合球员的状况和足球的规律性,发现问题,辅助球队管理。尽管足球运动中变 化和偶然性占有一定比重,但其内部的规律是不可否认的,我国的足球产业还不发达, 这不是一朝一夕可以 提高的, 因此必须从科学化管理出发, 才能逐步提高俱乐部的比赛成绩, 以及运作, 从而提高整个产业的发展。 要建立这个管理系统,需要经过从零开始的分析,了解现有的工作流程,并将其人 工操作事物流程用计算机来实现,信息管理系统的设计本身就是一项负责的系统工程, 要制定规划,成立强有力的实施机构,加强对相关人员的培训教育,制订并执行严格的 管理制度,球队管理的工作量大,而系统的可靠性,稳定性,安全性都至关非常重要。

1.2 设计此系统的目的
该系统要最终实现管理队员从入队到退队期间的信息管理, 包括球员的姓名, 国籍, 生日,技术特点等综合信息,并将球员工作管理各部门连成一个完整的数据整体,实现 信息高度共享。 建成一个完整统一、技术先进、高效稳定、安全可靠的基于 Internet/Intranet 的 球队管理信息系统。建立一个集球队信息自动化和信息化为一体的先进的电脑网络系 统,在为管理工作有关部门提供优质、高效的业务管理和事务处理的同时,采用安全可 靠的现代化处理和控制技术,及时、准确、可靠地采集和传输信息,建立完备、可靠的 信息处理系统。对各部门实现统一的信息浏览、管理。 借助于球队管理信息系统的建设,促进管理人员素质的提高,通过管理人员的实际 应用,促进球队管理工作的水平和效率的提高;通过提供多层次的信息服务和先进实用 的使用手段,满足球队内外内外对信息共享和利用的要求,并为各级领导提供有效的辅 助决策服务。
-1-

江苏师范大学科文学院课程设计报告

本系统作为球队管理信息系统的一个资源网进行建设,将以球队组织网为基础,实 现信息资源共享。同时为球队信息系统的建设建立初始框架。 本应用系统基于球队组织网,实现高水平的信息资源共享和跨平台的信息资源访 问,不仅要面向整个球队不同部门的信息资源的共享,还要解决各部门已有的或将建立 的信息系统的资源共享,而各部门信息系统和资源子系统的系统平台不一,数据库又不 尽相同,要解决不同的资源子网的信息共享,提高信息资源共享的利用率,系统结构应 具有跨平台访问不同数据源的机制。系统应具有较好的可扩展性和包容性。系统的可扩 展性应包括能接纳已有的系统和在今后系统软硬件扩展时,能有效地保护已有的投资。 特别是在应用需求变化时(应用与系统的需求往往提不全或者经常会变化), 有一个较好 的应用平台,能容易地加以调整。系统易于扩充升级,既能满足当前业务的需求,又为 今后的扩充留有空间。 应用系统的设计符合日常办公运作的需求,功能完备实用,简单易学,界面友好清 晰,易于扩充。网络结构简单明了,层次清楚,便于管理,易于扩充。在球员管理信息 标准化、规范化的基础上,对信息进行合理的布局。 本系统的建设目标是否能实现,系统整个投资能否发挥应有的效益,最终将取决于 该系统是否可靠实用。为此,系统应采用成熟可靠的技术,应贯彻产品化的设计原则和 实施方法。同时,系统的起点要高,而不是基于淘汰的技术,系统的建立应适应未来技 术发展的趋势。

1.3 球员信息管理系统可行性分析
对于一支球队来说,他要管理球队的球员信息,包括姓名,年龄,国籍,身高,体 重,技术特点等。球队要要赢得比赛球员起到了至关重要的作用,对于球队的球探来说 记住他们盯上的球员的基本信息非常关键。 球探可见他们手机的信息方便快捷的传达给 球队主教练以及俱乐部老板, 供他们参考最终选择哪个球员加盟球队以壮大自己球队的 实力向各项赛事的冠军发起强有力的冲击。

-2-

江苏师范大学科文学院课程设计报告

2 本系统关键技术简介
2.1 VC++介绍
VC 基于 C,C++语言,主要由是 MFC 组成,是与系统联系非常紧密的编程工 具,它兼有高级,和低级语言的双重性,功能强大,灵活,执行效率高,几乎可说 VC 在 Windows 平台无所不能。 最大缺点是开发效率不高。 VC 适用范围 1. VC 主要是针对 Windows 系统, 适合一些系统级的开发, 可以方便实现一些底层 的 调用。在 VC 里边嵌入汇编语言很简单。 2 .VC 主要用在驱动程序开发 3.VC 执行效率高,当对系统性能要求很高的时候,可用 VC 开发。 4.VC 主要适用于游戏开发 5.VC 多用于单片机,工业控制等软件开发,如直接对 I/O 地址操作,就要用 C++。 6.VC 适用开发高效,短小,轻量级的 COM 组件,DLL。比如 WEB 上的控件。 7.VC 可以开发优秀的基于通信的程序。 8.VC 可以开发高效灵活的文件操作程序。 9.VC 可以开发灵活高效的数据库操作程序。 10.VC 是编 CAD 软件的唯一选择!!!包括 AUTOCAD,UG 的二次开发。 11.VC 在多线程、网络通信、分布应用方面,VC++有不可比拟的优势。

2.2 ODBC 介绍
(1) 开放数据库互联 ODBC(Open Database Connectivity),即开放数据库互联。 ODBC 基于 SQL(Structured Query Language),并把它作为访问数据库的标准。这个 接口提供了最大限度的相互可操作性:一个应用程序可以通过一组通用的代码访问不同 的数据库管理系统。一个软件开发者开发的客户/服务器应用程序不会被束定于某个特 定的数据库之上。 ODBC 可以为不同的数据库提供相应的驱动程序。 对于 ASP 程而言, ODBC 数据源是 ASP 程序的 ADO 组件和数据库之间的接口。

-3-

江苏师范大学科文学院课程设计报告

(2)配置 ODBC 数据源

图 2.1 ODBC 数据管理器

1. 用户 DSN:ODBC 用户数据源存贮了如何与指定数据库提供者连接的信息。只对当 前用户可户可见,而且只能用于当前机器上。这里的当前机器是只这个配置只对当前的 机器有效,而不是说只能只配置本机上的数据库。它可以配置局域网中另一台机器上的 数据库的。 2. 系统 DSN: ODBC 系统数据源存贮了如何指定数据库提供者连接的信息。系统数据 源对当前机器上的所有用户都是可见的,包括 NT 服务。也就是说在这里配置的数据源, 只要是这台机器的用户都可以访问。 3. 文件 DSN:ODBC 文件数据源允许用户连接数据提供者。文件 DSN 可以由安装了相 同驱动程序的用户共享。这是界于用户 DSN 和系统 DSN 之间的一种共享情况。 4. 驱动程序:这页列出了本机上所有安装的数据库驱动程序。里面列举了每个驱动 程序的名称,版本,提供商公司,驱动程序文件名,以及安装日期。 5. 跟踪:ODBC 跟踪允许创建调用 ODBC 的日志,提供给技术人员查看。里面可设定 日志的路径和文件名。 技术人员通过这里面的信息可以看到本机上所有的数据库访问的 时间, 用户, 以及出错信息等情况。 也可以通过这个辅助调试应用程序, 可以启动 Visual Studio 的分析器,来进行 ODBC 的跟踪。 6. 连接池:连接池允许应用程序重用原来打开的的连接句柄,这样可以节省到服务 器的往返过程。 7. 关于:最后这一页列出了所有的 ODBC 的核心文件。

-4-

江苏师范大学科文学院课程设计报告

3 球员信息管理系统的实现与测试
3.1 登录模块和系统主界面设计
当系统运行时, 首先打开登录窗体, 只有有权限的用户才能进入系统。 登录成功后, 将显示系统主界面。 (1) 登录界面 进入程序后,首先出现的是【用户登陆】对话框,在【用户名】文本框中输入后按 Tab 键,程序将自动查询用户名并跳到【密码】文本框中,输入密码后按 Enter 键即可 进入系统,登录对话框如图 3.1 所示。

图 3.1 用户登录对话框

-5-

江苏师范大学科文学院课程设计报告

(2) 登录成功后将显示主界面主界面如图 3.2 所示,在此界面可以选择各种按钮 进行不同的操作。

图 3.2 主界面

-6-

江苏师范大学科文学院课程设计报告

3.2

系统功能的实现

(1) 增加功能 单击“增加“按钮,进入增加记录功能窗体,如图 3.3 所示。在上边的编辑框中, 可以很清楚看到整个表中的记录和主视图一致, 在编辑框中输入完成了记录后按确定按 钮,这样刚才输入的内容就同过 m_pSet 这个指针写如了数据库;按取消则推出刚才的 操作。

图 3.3 增加界面

(2) 删除功能 完成机构“增加“功能后,进入主界面,按下删除按钮,则删除当前显示的记录。 这个窗体相对简单,它实际上是管理各个记录的删除的,以便能即时更新旧的记录,删 除旧的没用的记录。

-7-

江苏师范大学科文学院课程设计报告

(3) 修改功能 对于有些写错了的记录,我们往往需要在事后才能进行修改,这个功能就为我们提 供了很好的操作界面。它先把当前记录的信息显示在另外一个窗口里如图 3.4,这样能 避免对记录的误操作。

图 3.4 修改界面

-8-

江苏师范大学科文学院课程设计报告

4 部分模块的详细设计
4.1 登录对话框的设计

将本项目工作区窗口切换到 ResourceView 页面插入一个对话框资源,打开属性对话框, 将其字体设置为“宋体, 号”, 9 标题定为“请职业球探同志登陆”, 设为 IDD_DIALOG1 ID 如图 4.1,向对话框中添加两个编辑框:“请输入用户名”(IDC_EDIT1) 、“请输入密码” ( IDC_EDIT_PWD)

图 4.1 登录对话框

双击对话框模板或按【Ctrl+W】快捷键为对话框资源建立类向导。为该对话框类取个名 字:CDlg_login。下面的 Base class 以及 Dialog ID 不要随便改动。然后点击 OK。这样 新的类 CDlg_login 就与本对话框建立起了联系。

-9-

江苏师范大学科文学院课程设计报告

如图 4.2 左键双击 IDC_EDIT1(或者单击后,点击右边的 add variables) ,为 IDC_EDIT1 增加一个对应在类中的名字:m_login_name。其他地方不要改动。点击’确 定’。同样也对 IDC_EDIT_PWD 也取一个名字:m_login_pwd。

图 4.2 ”MFC ClassWizard”对话框

点击确定。建立好了登录对话框以及其对应的类 CDlg_login。在 ClassView 里面可以看 到新加入 类 CDlg_login。 这个时候如果编译运行的话,该对话框并不会自动弹出来。点击右边的 FileView,点击 source files , 双 击 MainFrm.cpp 。 在 右 边 打 开 了 该 文 件 。 找 到 CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct),即窗体框架创建函数。在该 函数的后面(在 return 0 ;的前面)加入语句: CDlg_login dlg;//生成一个登录对话框对象 dlg.DoModal();//让对话框对象以有模式形式显示出来。 在 MainFrm.cpp 文件的前面添加:#include "dlg_login.h"。 在运行过程中,点击 OK 后,主窗体会显示出来,并没有在用户名以及密码框中输入。 要求输入正确的用户名和密码,主窗体才能显示出来。 增加一个成员函数,点击 OK。 在 void CDlg_login::OnOK()函加入如下代码: void CDlg_login::OnOK() { // TODO: Add extra validation here UpdateData(); m_login_name.TrimLeft();
- 10 -

江苏师范大学科文学院课程设计报告

if(m_login_name.IsEmpty()) { MessageBox("请输入用户名!"); return; } if(m_login_pwd.IsEmpty()) { MessageBox("请输入密码!"); return; } CDatabase database; database.OpenEx( _T( "DSN=球员基本信息" ),CDatabase::noOdbcDialog); CRecordset recset(&database); CString mSqlStr; mSqlStr= "SELECT * FROM 登录对话框 WHERE username='"; mSqlStr = mSqlStr + m_login_name; mSqlStr = mSqlStr + "' AND password='"; mSqlStr = mSqlStr + m_login_pwd; mSqlStr = mSqlStr + "'"; if (!recset.Open(CRecordset::forwardOnly, mSqlStr, CRecordset::readOnly)) { AfxMessageBox("登陆界面表打开失败!"); return; } if (!recset.IsEOF()) { // Open all function for user AfxMessageBox("登录成功"); } else { AfxMessageBox("用户名或密码错误!"); return; } CDialog::OnOK(); } 在 void CDlg_login:: OnCancel 函加入如下代码: void CDlg_login::OnCancel() { // TODO: Add extra cleanup here

- 11 -

江苏师范大学科文学院课程设计报告

CDialog::OnCancel(); exit(0); } 此时运行输入密码的时候是明码,不是星号显示的。在登录对话框,右键点击密码 文本框,点击属性,点击 style,选中 password。

4.2 登录对话框的美化
向登录对话框中加背景图的过程,将本项目工作区窗口切换到 ResourceView 页面插入 一个位图资源默认名为 Bitmap1。在 CDlg_login 类中增加一个成员函数 OnPaint 在 void CDlg_login:: OnPaint()函加入如下代码: void CDlg_login::OnPaint() { CPaintDC dc(this); // device context for painting // TODO: Add your message handler code here CRect rect; GetClientRect(&rect); CDC dcMem; dcMem.CreateCompatibleDC(&dc); CBitmap bmpBackground; bmpBackground.LoadBitmap(IDB_BITMAP1); //IDB_BITMAP 是你自己的图对应的 ID BITMAP bitmap; bmpBackground.GetBitmap(&bitmap); CBitmap *pbmpOld=dcMem.SelectObject(&bmpBackground); dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0, bitmap.bmWidth,bitmap.bmHeight,SRCCOPY); // Do not call CDialog::OnPaint() for painting messages }

- 12 -

江苏师范大学科文学院课程设计报告

运行结果如图 4.4 所示

图 4.4 美化后的登录对话框

- 13 -

江苏师范大学科文学院课程设计报告

5 总结
5.1 存在的不足

由于设计者水平有限及时间等方面的原因,该系统的功能比较简单,该界面的增加 功能只能在的一个记录下进行添加, 此外使用查询功能后浏览按钮会失效因此只能通过 查询按钮进行浏览球员信息。

5.2 设计过程总结
我设计该管理系统花了很长时间,因为是初学,所以还有很多没有做好的地方和没 有想到的地方。 开始时我先是做了一个单文挡应用程序主要用来显示球员的各种基本情 况,这也是我设计的主界面,在界面上有五个功能按钮分别是增加、修改、删除、查询 结果。增加和修改都是另外弹出一个对话框来实现各自的功能;删除就是删除当前浏览 界面上的记录;查询提供了按球员编号查询的方法,和按球员姓名查询的方法。只要输 入球员编号或姓名就可以直接查询了;后来在添加程序代码的时候又遇到了好多麻烦, 但在同学的帮助下我都顺利的解决了。 在这之中我知道我还有很多的不足之处和很多错 误没能想到, 希望在以后的学习中能够努力弥补自己的不足争取在以后的课程设计中能 够有好的成绩。

- 14 -

江苏师范大学科文学院课程设计报告

参考文献

[1] 郑阿奇主编,丁有和编著.《Visual C++教程》[M]. 北京: 机械工程出版社,2012 [2] 郑莉,董渊,何江舟编著.《C++语言程序设计》 (第四版)[M]. 北京:清华大学出 版社,2010

- 15 -

江苏师范大学科文学院课程设计报告





在这次 VC++的课程设计中,曾遇到过不少问题,单靠我个人的努力,很难按时完 成该课程设计,在此,我衷心感谢我的老师和同学。李全彬老师认真负责的工作态度, 严谨的治学精神和深厚的理论水平都使我获益非浅。 另外, 还要感谢学校领导、 班主任、 各位同学对我们的关怀、帮助,为我们提供了良好的设计环境以及各方面的支持。

- 16 -

江苏师范大学科文学院课程设计报告

附录 A 球员信息管理系统源程序代码
///////////////////////////////////////////表单对话框资源模板//////////////////////////////////////

///////////////////////////////////////////增加模块代码//////////////////////////////////////////////// void CEx_108326235View::OnRecAdd() { // TODO: Add your control notification handler code here CScoreDlg dlg; if (dlg.DoModal()==IDOK) { m_pSet->AddNew(); m_pSet->m_playername = dlg.m_strplayername; m_pSet->m_playerno = dlg.m_strplayerno; m_pSet->m_nationality = dlg.m_strnationality; m_pSet->m_birthday = dlg.m_strbirthday; m_pSet->m_stature = dlg.m_istature; m_pSet->m_weight = dlg.m_iweight; m_pSet->m_position = dlg.m_strposition; m_pSet->m_club = dlg.m_strclub; m_pSet->m_information = dlg.m_strinformation; m_pSet->Update(); m_pSet->Requery(); } } //////////////////////////////////编辑代码///////////////////////////////////////// void CEx_108326235View::OnRecEdit() { // TODO: Add your control notification handler code here CScoreDlg dlg; dlg.m_strplayername = m_pSet->m_playername; dlg.m_strplayerno = m_pSet->m_playerno; dlg.m_strnationality = m_pSet->m_nationality; dlg.m_strbirthday =m_pSet->m_birthday; dlg.m_istature = m_pSet->m_stature; dlg.m_iweight = m_pSet->m_weight; dlg.m_strposition = m_pSet->m_position; dlg.m_strclub = m_pSet->m_club; dlg.m_strinformation = m_pSet->m_information ; if (dlg.DoModal()==IDOK) { m_pSet->Edit(); m_pSet->m_playername = dlg.m_strplayername; m_pSet->m_playerno = dlg.m_strplayerno; m_pSet->m_nationality = dlg.m_strnationality;
- 17 -

江苏师范大学科文学院课程设计报告

m_pSet->m_birthday = dlg.m_strbirthday; m_pSet->m_stature = dlg.m_istature; m_pSet->m_weight = dlg.m_iweight; m_pSet->m_position = dlg.m_strposition; m_pSet->m_club = dlg.m_strclub; m_pSet->m_information = dlg.m_strinformation; m_pSet->Update(); UpdateData(FALSE); } } ///////////////////////////////////////////删除模块代码//////////////////////////////////////////////// void CEx_108326235View::OnRecDel() { // TODO: Add your control notification handler code here CRecordsetStatus status; m_pSet->GetStatus(status); m_pSet->Delete(); if (status.m_lCurrentRecord==0) m_pSet->MoveNext(); else m_pSet->MoveFirst(); UpdateData(FALSE); ////////////////////////////////////按球员姓名查询////////////////////////////////////// void CEx_108326235View::OnButtonQuery1() { // TODO: Add your control notification handler code here UpdateData(); m_strQuery1.TrimLeft(); if (m_strQuery1.IsEmpty()) { MessageBox("要查询的球员姓名不能为空!"); return; } if (m_pSet->IsOpen()) m_pSet->Close(); // 如果记录集打开,则先关闭 m_pSet->m_strFilter.Format("playername='%s'",m_strQuery1); // studentno是score表的字段名,用来指定查询条件 m_pSet->m_strSort = "playerno"; // course是score表的字段名,用来按course字段从小到大排序 m_pSet->Open(); // 打开记录集 if (!m_pSet->IsEOF()) // 如果打开的记录集有记录 UpdateData(FALSE); // 自动更新表单中控件显示的内容 else MessageBox("没有查到你要找的球员记录!"); }

- 18 -

江苏师范大学科文学院课程设计报告

/////////////////////////////////////////////////按球员编号查询代码////////////////////////////////////////////////// void CEx_108326235View::OnButtonQuery() { // TODO: Add your control notification handler code here UpdateData(); m_strQuery.TrimLeft(); if (m_strQuery.IsEmpty()) { MessageBox("要查询的编号不能为空!"); return; } if (m_pSet->IsOpen()) m_pSet->Close(); // 如果记录集打开,则先关闭 m_pSet->m_strFilter.Format("playerno='%s'",m_strQuery); // studentno是score表的字段名,用来指定查询条件 m_pSet->m_strSort = "playerno"; // course是score表的字段名,用来按course字段从小到大排序 m_pSet->Open(); // 打开记录集 if (!m_pSet->IsEOF()) // 如果打开的记录集有记录 UpdateData(FALSE); // 自动更新表单中控件显示的内容 else MessageBox("没有查到你要找的编号记录!");

/////////////////////////////插入背景图代码//////////////////////////////////////// void CEx_108326235View::OnPaint() { CPaintDC dc(this); // device context for painting // TODO: Add your message handler code here CRect rect; GetClientRect(&rect); CDC dcMem; dcMem.CreateCompatibleDC(&dc); CBitmap bmpBackground; bmpBackground.LoadBitmap(IDB_BITMAP3); //IDB_BITMAP是你自己的图对应的ID ,由于我刚刚加入的位图资源 BITMAP bitmap; bmpBackground.GetBitmap(&bitmap); CBitmap *pbmpOld=dcMem.SelectObject(&bmpBackground); dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0, bitmap.bmWidth,bitmap.bmHeight,SRCCOPY); // Do not call CDialog::OnPaint() for painting messages // Do not call CRecordView::OnPaint() for painting messages }

- 19 -

江苏师范大学科文学院课程设计报告

////////////////////////////////////编辑对话框主要代码/////////////////////////////////////////// void CScoreDlg::OnOK() { // TODO: Add extra validation here UpdateData(); m_strplayerno.TrimLeft(); m_strplayername.TrimLeft(); if(m_strplayerno.IsEmpty()) MessageBox("编号不能为空!"); else if(m_strplayername.IsEmpty()) MessageBox("姓名不能为空!"); else { int nChoice=MessageBox("确定您的操作? ","",MB_YESNO|MB_ICONQUESTION); if(nChoice==IDYES) { CDialog::OnOK(); } if(nChoice==IDNO) { CDialog::OnCancel(); } } } void CScoreDlg::OnCancel() { // TODO: Add extra cleanup here CDialog::OnCancel(); } //////////////////////////////////

//////////////////////////////////登录对话框主要代码//////////////////////////////////////////////// #include "stdafx.h" #include "Ex_球员信息管理108326235.h" #include "Dlg_login.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CDlg_login dialog
- 20 -

江苏师范大学科文学院课程设计报告

CDlg_login::CDlg_login(CWnd* pParent /*=NULL*/) : CDialog(CDlg_login::IDD, pParent) { //{{AFX_DATA_INIT(CDlg_login) m_login_name = _T(""); m_login_pwd = _T(""); //}}AFX_DATA_INIT } void CDlg_login::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CDlg_login) DDX_Text(pDX, IDC_EDIT1, m_login_name); DDV_MaxChars(pDX, m_login_name, 20); DDX_Text(pDX, IDC_EDIT_PWD, m_login_pwd); DDV_MaxChars(pDX, m_login_pwd, 9); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CDlg_login, CDialog) //{{AFX_MSG_MAP(CDlg_login) ON_WM_PAINT() //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CDlg_login message handlers

void CDlg_login::OnOK() { // TODO: Add extra validation here UpdateData(); m_login_name.TrimLeft(); if(m_login_name.IsEmpty()) { MessageBox("请输入用户名!"); return; } if(m_login_pwd.IsEmpty()) {
- 21 -

江苏师范大学科文学院课程设计报告

MessageBox("请输入密码!"); return; } CDatabase database; database.OpenEx( _T( "DSN=球员基本信息" ),CDatabase::noOdbcDialog); CRecordset recset(&database); CString mSqlStr; mSqlStr= "SELECT * FROM 登录对话框 WHERE username='"; mSqlStr = mSqlStr + m_login_name; mSqlStr = mSqlStr + "' AND password='"; mSqlStr = mSqlStr + m_login_pwd; mSqlStr = mSqlStr + "'"; if (!recset.Open(CRecordset::forwardOnly, mSqlStr, CRecordset::readOnly)) { AfxMessageBox("登陆界面表打开失败!"); return; } if (!recset.IsEOF()) { // Open all function for user AfxMessageBox("登录成功"); } else { AfxMessageBox("用户名或密码错误!"); return; } CDialog::OnOK(); } void CDlg_login::OnCancel() { // TODO: Add extra cleanup here CDialog::OnCancel(); exit(0); }

- 22 -


网站首页 | 网站地图 | 学霸百科 | 新词新语
All rights reserved Powered by 大学生考试网
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@qq.com