预览加载中,请您耐心等待几秒...
在线预览结束,喜欢就下载吧,查找使用更方便
如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
VB课程设计任务书–自动发牌第PAGE3页共NUMPAGES3页河北工业大学计算机软件技术基础(VB)课程设计任务书本题难度级别:C实现基本要求代码:约100行主要涉及:常用控件、Excel对象一、设计题目:课堂点名(出题人:陈冀川)二、目的与要求1.目的培养学生综合利用VB语言进行程序设计,解决实际问题的能力。2.基本要求程序实现从Excel工作表中读取学生信息,显示在窗体控件上。按下空格键表示出勤、其他键表示缺勤,并用Y/N表示出勤/缺勤,记录到Excel工作表里。3.创新要求在基本要求达到后,进行创新设计,创新方向提示如下:统计缺勤人数;增加显示缺勤学生信息功能;增加直滚动条用于浏览学生信息;其他你能够想到或者希望实现的功能。三、设计方法和基本原理1.问题描述点击“开始”,打开通用对话框选择Excel文件名后,工作表里的学生信息自动显示在窗体上,启动延时(Timer)。如果不做任何操作,超时后标记为缺勤并显示下一条记录。如果在超时前按下空格键,标记为出勤,其他键记为缺勤,显示下一条记录。2.问题的解决方案①设计程序界面。主窗体如上图。班级、学号用Label控件显示,出勤、缺勤用Option控件,姓名也用Label控件显示,边框形式与班级、学号不同。由于要使用键盘,窗体的KeyPreview属性设为True,让其先捕获键盘事件。Excel对象添加方法:在VB里点击菜单“工程”“引用”,找到“MicrosoftExcel11.0ObjectLibrary”,选中。②分析程序构成点击“开始”后,开始显示学生信息,“开始”按钮变为无效状态,防止反复点击创建多个Excel对象。回车键使点名过程暂停/继续。③编写代码EXCEL对象创建的参考代码:SetxlApp=CreateObject("Excel.Application")'创建EXCEL对象SetxlBook=xlApp.Workbooks.Open(App.Path&"\VB名单.xls")'打开已经存在的EXCEL工件簿文件xlApp.Visible=False'设置EXCEL对象可见(或不可见)SetxlSheet=xlBook.Worksheets("Sheet1")'设置活动工作表点名结束后,EXCEL对象关闭的参考代码:xlBook.Close(True)'关闭工作簿xlApp.Quit'结束EXCEL对象SetxlApp=Nothing'释放xlApp对象四、主要技术问题的描述本题技术重点:两个事件过程之间的通信。在显示过程中要启动延时,延时需要Timer配合。在两个事件过程之间通过一个全局的Boolean变量TimeOut通信。在Timer事件里:PrivateSubTimer1_Timer()TimeOut=TrueEndSub在显示过程里:Timer1.Enabled=TrueTimeOut=FalseUserKey=0DoDoEventsLoopUntilUserKey<>0OrTimeOut五、参考资料VisualBasic程序设计教程及VisualBasic实验教程VB6.0程序员指南VB6.0控件参考手册MSDN中文版,课程设计网站上提供的其它资料。在本题设计素材中还提供了如下本题专用资料:VB名单.xls六、设计部分的评分标准(本题难度为C级,综合时乘难度系数1.0)完成基本要求80完成基本要求后的扩展要求90所有要求完成并且有创新100[注:最后得分是根据本部分得分(占最大比例)以及课程设计期间纪律、设计报告书、答辩情况综合得出)