第一篇:《我的第一个VB程序》教学设计
《我的第一个VB程序》教学设计 盐城中学何娟 教材分析
本节课是《算法与程序设计》(选修)第二章第一节的内容。第一节共分三个课时,这是第二课时的内容。前一课时集中介绍了VB集成开发环境和界面设计,这一课时通过一个实例介绍可视化编程的一般步骤,在程序编写过程中完成VB基本知识和技能讲解。教材中此部分内容详细清晰,对学生上机实践有很强的指导作用。学情分析
上节课主要介绍了VB集成开发环境、控件、对象、属性等基本概念,熟悉了标签、文本框和命令按钮等基本控件机器属性设置的操作,本节课在熟悉界面设计的基础上进一步了解可视化编程的一般步骤,尤其是代码设计。由于大部分学生是初次接触程序设计,而一般人对于程序设计有着“难”的偏见,因此学生既有好奇心,又有畏难情绪。因此教师应充分了解这一点,通过简单的例子,让同学体验成功的快乐,在揭开“编程”神秘的面纱的同时,激发学生学习的积极性和对程序设计的兴趣。教学目标
知识与技能目标:
要求学生熟悉可视化编程的一般步骤。
让学生了解事件、事件驱动机制等基本概念。学生能独立的完成一个简单的VB程序。过程与方法
设问导入新课,学生进行自主探究学习、小组合作交流学习等方式,激发学生的学习兴趣,让学生在“做中学”,既考验其动手能力和举一反三能力,又避免纸上谈兵,理解不透彻。老师在分析一个完整的程序基础上布置难易适中的任务,在学生操作过程中巡视指导。情感态度和价值观
★ 培养学生自主探索、协作学习的能力。★培养学生勇于实践和不断进取的精神。★ 培养学生的对程序设计的兴趣。
四、教学重点与难点
★ 重点:可视化编程的一般步骤。
★ 难点:学生在熟悉编程的一般步骤的基础上能编程解决实际问题。
五、教法与学法
★教学方法:讲解与演示相结合、启发式教学法、任务驱动法 ★学习方法:模仿学习、自主探究学习,小组交流合作学习
六、设计思想
尊重学生解决问题的思维过程,模拟学生的学习体验和情感体验,在以学生为主体、教师为主导的架构下,搭建以生为本的学习的平台,帮助学生通过学与练,以不断解决问题为手段,一步步完成学习任务。
新课标中提出了信息技术课程要以进一步提高学生信息素养为宗旨,强调通过合作解决实际问题,掌握信息技术,感受信息文化,增强信息意识,提高学生总体的信息素养。而在本节课中就坚持了以教师为主导,学生为主体,发展能力和提高素质为主线的启发式教学思想,努力为学生创设了开放式的学习环境。
本节课以编写一个完整地程序为主线,让学生了解事件、代码的基本组成、代码的书写规则以及具体语句中涉及到的知识点(主要包括:数据的类型、变量的定义与声明、表达式以及一些常用语句和函数)。通过自主编写程序发现问题,探究解决问题的方式,最后学会自我总结。让学生通过讨论学习,小组合作学习等方式掌握可视化编程的一般步骤,提高解决实际问题的能力。
七、教学过程 教学环节
教师/学生活动设计
设置疑问 导入新课
【导入】:展示上节课已经做好的程序界面(如下图),请同学根据界面猜想程序功能,教师运行测试,发现输入被加数和加数后单击计算按钮,不能正常显示结果。【教师提问】:造成这种情况的原因是什么呢? 【学生讨论、回答】
【教师分析总结】:该程序缺少代码。上节课我们只完成了界面设计部分,其实程序设计还有一个更重要的部分,那就是代码设计。[板书] 界面设计代码设计打个比方:就好像一只手表只有表壳和表带,而没有机芯,是无法正常工作的。所以两者齐全才可以成为一个真正的程序。[板书] 我的第一个VB程序
新课讲授: 创设情境 剖析代码
【教师操作并讲解】:(创设情境)那么代码该怎样编写呢?我们可以首先模拟前台,对于用户而言,输入被加数和加数后,用户希望单击计算按钮,可以从第三个文本框中看到计算结果。所以,代码添加在按钮里,双击计算按钮。机器会自动添加两行代码,代码的主体就在这两行中间添加。【教师讲解】:(知识迁移)由于同学对数学题目的解题步骤比较熟悉,我们姑且把它当作一道数学题来解答。首先,我们分析一下,题目中涉及到几个变量? 【学生回答】:
【教师讲解并操作】:在VB中,用到的变量应该先定义后使用,现在我们来定义这三个变量,假设我们分别以变量a,b,c来表示被加数、加数及和。先定义变量a,定义语句的格式为:dim 变量名 as 类型,所以语句为:dim a as single , 这里的single为实型,相当于数学里的实数。【教师提问】:那么变量b和c应该怎样定义呢? 【学生回答,教师演示】:dim b as single
dim c as single 【教师提问】:a,b,c三个量中哪些是已知条件?在数学题里已知条件被加数和加数由题目提供,而我们的程序被加数和加数是由谁提供的呢? 【学生回答】:用户 【教师提问】:那么用户把被加数填写在哪呢? 【学生回答】:
【教师讲解并操作】:所以a的值为text1.text,a=text1.text。那么b的值应该如何获取呢?请一位同学回答。【学生回答】: 【教师提问】:至此,我们已经知道a和b的值了,那么如何通过已知条件求解出c呢?请一位同学在教师机上演示。【学生操作】: 【故设悬疑】:程序编写到这里是否行了呢?同学的意见出现了分歧,都说实践是检验真理的唯一标准,那么我们就让机器来验证吧 【教师运行程序】: 【教师讲解】:程序并没有如我们所料想的那样显示结果,事实证明我们的程序存在一些小问题,那究竟是哪里出错了呢?正如同学们知道的,我们其实已经把和的值求出来了,可是程序为什么不显示结果呢?对!我们把求出来的结果存放在变量c中,而对于用户而言,并不知道变量c的存在,他只关心第三个文本框,所以,我们还应该将变量c显示在第三个文本框中。现在再请一位同学在教师机将代码修改正确。【教师分析总结】:一个完整的代码通常包括这样几个部分: 定义变量 输入 处理 输出
给次按钮Command2添加代码:End 【课堂实践一】:独立完成加法程序(提供界面和代码图片)
【展示学生程序】
举一反三 解决新问题
【课堂实践二】:已知圆的半径,求圆的周长和面积。(为节约时间,界面已提供)【教师巡回指导】
展示评价
【展示学生程序】老师不但可选成功的程序,也可选取较不成功的作品,但要有典型意义。
【学生评价】 【教师评价】
总结并提出希望
【教师总结】一直以来,在我们的印象中,编程是件很难的事。可是通过加法程序这部分内容的学习我们发现编程也是有章可循的,希望通过这节课的学习,同学们能喜爱上编程,让程序学习变成一件快乐的事。
第二篇:八年级下册VB程序教学设计
第四课学学程序设计——初步认识编程软件VB 教学目标及要求:
知识目标:了解什么是程序设计语言和计算机程序以及语言的分类; 能力目标:培养学生的阅读总结和自主探索能力;
情感态度与价值观:通过学生利用所学的知识解决实际问题,激发学生的学习兴趣。教学重难点:
1.了解什么是程序设计语言。2.启发学生创新思维要求:
3.以任务为驱动,激发学生创新思维
教法及学法:讲授法谈话法讨论法、任务驱动和分组合作相结合 教学过程:
创设情境,导入新课:
教师运行游戏小程序,引起学生的兴趣,并打开程序的源代码说明编程并不很神秘。
试运行游戏小程序,激发学生的学习兴趣。教师讲授: 程序设计语言
教师活动:语言是人类交流思想、沟通感情最重要的工具。那么语言不通的人如何交流呢? 学生活动:请一个语言翻译或自己学会他人的语言 教师活动:计算机所做的事情均为人向机器下达的命令,那么操作者又是通过什么语言同计算机进行沟通的呢?
程序设计语言的分类及特点(1)、机器语言
教师活动:①计算机能听懂的语言(机器语言)②机器语言的实质(二进制语言)③二进制语言的特点。强调计算机内部只认识二进制 学生活动:谈对二进制语言的感受
教师小结:机器语言的特点(二进制、计算机直接能懂、难以理解,与人类语言差距较大)(2)汇编语言:用助记符表示面向机器的程序设计语言。使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言。适合编写直接控制机器操作的程序,不容易使用。(3)、高级语言
高级语言最接近人的自然语言,即简单易学,它所编制的程序计算机执行时需要“翻译”,执行速度比二进制程序慢。计算机程序
教师提出问题一:什么是程序?
日常所说的“程序”是指事情的先后顺序。问题二:什么是计算机程序?
教师展示游戏程序部分的源代码语句,学生观察游戏程序的源代码。思考什么是计算机程序?
计算机程序是用程序设计语言编写好的一组指令,用来指示计算机的每一步动作。VB程序设计语言:
1、VB简介:
vb是Visual Basic的简称,是由美国微软公司于1991年开发的一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发 Windows 环境下的各类应用程序。它简单易学、效率高,且功能强大。
2、认识VB窗口:
教师活动:打开准备好的VB程序----世博口号.exe 学生活动:新建标准工程进入VB环境
教师活动:指认VB环境中菜单栏、工具栏、工具箱、属性窗口、窗体、控件等的位置。工具箱:许多用于程序设计的控件 窗体编辑器:设计应用程序界面
工程资源管理器:帮助用户管理工程中的每一个文件 属性窗口:设置对象的特征
3、相关概念: ①对象的概念 教师活动:讲解所谓“对象”就是个可操作实体如窗体、窗体中命令按钮、标签、文本框等。② 控件的概念
教师活动:讲解控件的概念。(窗体界面中可供用户操作的元素)学生活动:认识范例窗体中有哪些是控件 教师活动:在工具栏中指认相应控件 学生活动:向窗体中添加相应控件 ③ 属性的概念
教师活动:讲解属性的概念。(控件的内部和外部特征)学生活动:尝试在属性窗口中找到某控件的相应属性 ④ 事件和代码的概念
师生活动:运行程序---点击按钮---请学生观察窗体变化
师生活动:结束运行状态---双击按钮进入代码窗口:观察点击按钮程序发生变化的原因(代码)---学生观察、教师讲解(代码改变控件属性方法:控件名.属性名=属性值)---学生尝试用此方式改变窗体中其他控件的属性(如Label1.Caption=”better city,better life”)教师演示:
1、教师演示设计运行程序“奔跑的小汽车”,学生认真观察。
2、教师将素材发送到学生机,布置任务: 依照教师演示编写程序“奔跑的小汽车”。学生体验:
1、学生编写程序“奔跑的小汽车”,教师巡回指导。
2、试修改程序,让汽车倒车、速度变慢。
五、教学评价:
1、教师点评 教师通过巡视,把部分学生修改的结果进行点评,指出典型的错误。
2、学生进行自评: 评价内容描述
对我的学习
满意 还可以
还需 努力
了解程序设计语言和计算机程序
初步认识VB窗口的组成和工作环境
对程序设计学习的兴趣
六、课后小结:
这节课,我们体验了用VB设计程序,了解程序有关知识。(回顾本节知识)希望同学们继续努力。
第三篇:VB程序连乘算法的教学设计
VB程序连乘算法的教学设计
摘 要:该文主要对程序设计课程中的连乘算法进行教学设计,结合实例介绍了连乘算法的关键点,对算法中经常会遇到的内存溢出问题进行解析,针对连乘算法的通用表达式进行了优化,使程序更易理解,达到加深理解,优化教学效果。
关键词:程序设计 算法 连乘算法 溢出
中图分类号:G64 文献标识码:A 文章编号:1672-3791(2015)12(a)-0220-02
在程序设计课程中,算法是课程的重点,同时也是难点,如何将算法原理向学生讲解透彻并可以让其轻松接受,是在教学过程中需要思考的一个问题。
在计算机中,算法(Algorithm)是对特定问题求解步骤的一种描述,它是指令序列的集合。程序设计就是设计算法、编写代码、调试运行的过程。显而易见,算法是程序设计的基础,程序设计是算法的具体实现。在程序设计课程的教学设计过程中,常用算法一般包括求最大/最小值、累加/连乘、穷举法、递推法等,该文将主要针对连乘算法进行分析。连乘算法
在程序基础教学中,为了提高教学效果,针对刚入门的程序设计初学者,教师们一般采用任务驱动法[1]进行算法的分析,引导学生理解和掌握该算法的核心思想,进而再用程序的方式来描述与验证该算法。例如:
以上是一个典型的连乘算法,该算法描述的关键点可归纳如下:
(1)每一项和每次连乘之积是变化量。
(2)因此,需要两个变量:
①用T表示每一项的值:T=T+1。
②用S表示连乘之积:S=S*T。
(3)循环终止条件: 循环次数>n。
(4)初始化:S=1。内存溢出问题
在讲解程序算法时,大多数程序设计教程都很少提及赋值或计算中的“溢出”问题,然而在学生的编程操作中,“溢出”却是经常会遇到的一个问题[2],这些问题常常会让学生觉得困惑,查找原因时却无从下手,导致学生出现畏难情绪。因此,教师有必要在授课过程中,对程序在内存中的存储方式进行初步讲解,让学生可以了解程序的运行机制,加深理解。
软件在运行过程中,如果程序调用的数据文件过大,或程序设计中存在着死循环等bug,软件写入内存中的数据量超过了系统分配给该软件的内存空间大小,则会发生内存空间装不下而溢出的现象,这种现象就叫内存溢出。在求阶乘的算法中,由于阶乘的结果累积速度较快较大,容易发生数据溢出。
让学生进行程序的调试与运行,当n=10和=50时运行结果如图1所示,但当n=100时,却弹出如图2所示的警告信息。
分析导致“溢出”错误的原因:
当程序运行发生“溢出”错误时,通过调试跟踪,在T=(2* i)^ 2/((2*i-1)*(2*i+1))语句处,把光标移至i变量上,可以发现溢出时i的值为91;当i=91时,表达式((2*i-1)*(2*i+1))=,该表达式的值为33123。程序将结果值S设置为double类型,当i=91时,结果为33123,这个值按道理应在double类型的数值范围内,但程序仍然发生了溢出错误,问题在哪里呢?
实际上,产生这个溢出问题的原因是由于VB本身的内存分配机制造成的,VB在进行计算过程中,它总是分配一个最省内存的临时内存空间去存储这些中间计算结果数值,这个最省的内存空间容量根据表达式中数据类型决定,如上述相乘的两个表达式(2*i-1)和(2*i+1),他们当中的变量i是整型,因此,VB也将使用一个类型为整型的临时变量来存储两个表达式的乘积。所以,当i=91时,得到乘积结果33 123,此时即使是乘积结果变量S设置为double类型,但乘积结果(33 123)已超过了声明为整型的临时变量空间的极限(-32 768~+32 767),所以仍然会发生溢出错误。
根据上面的原因分析,可以从以下几方面进行修正:
(1)将变量 i 定义为长整型或实数型或变体型。
(2)将错误语句中的变量 i或常量(1或2)其一操作数利用转换函数Clng(i)或Clng(1),以求足以容纳计算结果。
(3)避免大数相乘,可将错误语句改为T=(2*i)^ 2/(2*i-1)/(2*i+1)。
(4)连乘算法的改进。
同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法乃至程序的效率。虽然上述方法解决了“溢出”问题,但是表达式T=(2*i)^2/(2*i-1)*(2*i+1)显得很笨重,表达式明显复杂。能否有办法可以降低复杂度,简化表达式以求程序优化呢?
可以把通项表达式T=(2*i)^2/(2*i-1)*(2*i+1)中的分子式分解开来,把问题理解为简单表达式T=A/B(其中A=(2*i)^2和B=(2*i-1)*(2*i+1),如此一来问题就变得较为简单且易于解决。因此,求∏的近似值的VB程序代码优化实现如下:
在此例中,关键点在于如何将复杂的通项表达式分解为简单表达式,进而实现连乘算法的优化。因此,如何构造通项表达式尤为关键,必须注意2点。
(1)通项表达式T=B/A中的A或B均可为常量或变量表达式,A和B可以继续分解;①若A=1,则T=B;②若B=1,则T=1/A;
(2)必须精选变量A与B的数据类型,避免出现“溢出”。结语
该文对程序设计课程中关于连乘算法的问题进行了初步探讨,指出程序设计初学者中学习过程中经常会遇到的“溢出”问题,提出修正方法,并对连乘算法进行改进优化,加深理解,强化教学效果。
参考文献
[1] 杨晨霞,涂风涛.任务驱动教学法在Visual Basic程序设计教学中的应用[J].职教论坛,2012(18):79-81.[2] 贾颖.“VB 程序设计”课程教学中的变量类型使用问题研究[J].Computer Education,2008(20):138-139.
第四篇:论文VB程序
《教务信息管理系统VB程序设计》的教学思路(2010年高职单招计算机专业技能测试题)
福安市民族职业中学———冯建锋
摘要:针对2010年高职单招计算机专业技能测试题,结合我省高职单招VB程序设计教学考纲要求进行分析。针对我校学生实际情况写出《教务信息管理系统VB程序设计》的教学思路(要求)
关键词:信息管理系统,VB程序设计,教学思路 程序思路,需要完成一个教务信息管理系统。
1:完成页面的设计。首先创建一个工程,工程中自动生成一个Form,也就是我们常说的页面,并给这个页面的名称设置成Form1,用以区分系统中其他的页面。通过编辑栏中的,Label工具,在页面中间插入一段文字,为“教务管理系统”。因为完成一个教务管理系统,需要完成的内容有学生信息的录入,学生信息的修改,学生信息删除以及学生信息的查询。于是在该页面使用Button工具,放置四个按钮并将四个按钮的Caption分别设置成“学生录入”,“学生修改”,“学生删除”和“信息统计”。且名称分别设置成Command1,Command2,Command3,Command4。依据程序要求我们可以知道,需要完成学生录入,学生修改,学生删除,和信息统计的各个功能,就必须存在有四个排版各不相同的页面,来满足各个功能的需求,于是在工程的树形菜单下选择窗体,再选择新建窗体。重复操作四次,成功建立了四个Form。分别命名为Form2,Form3,Form4,Form5用来区分和其他的Form。上面提到过的设置了四个按钮,作为按钮则是拿来点击的,而按照我们的思路,四个按钮分别代表了要完成的四项功能,那么可以得出每点击一个按钮,就应该要弹出相对应的页面来提供给用户恰当的服务。于是双击按钮,将自动生成代码如下: Private Sub Command1_Click()····· End Sub 其中Command1是代表按钮的名称整个函数就是代表了某一个按钮被点击之后应该执行的内容。End表示此函数结束。那么就应该写入对应的内容。完成之后的代码如下: Private Sub Command1_Click()
Form2.Show End Sub Private Sub Command2_Click()
Form4.Show End Sub Private Sub Command3_Click()
Form3.Show End Sub Private Sub Command4_Click()Form5.Show End Sub 分别代表了不同的按钮点击之后不同的执行的位置。其中Form.Show则代表对于某一个页面进行显示的功能。以上第一段表示了点击按钮1显示页面2。其他意思同上就不赘述。这样就完成了主页面:
我们可以知道的是还需要完成四个功能,学生录入,学生修改,学生删除和信息统计。完成学生录入的设计:使用工具栏中的Label,Text,和button以及Adodc进行页面的设计。即可。完成页面如下:。
其中Adodc原本工具栏中并没有,需要添加控件。按ctrl+T或者在菜单“工程”-“组件”里选择
Microsoft ADO Data Control 6.0(SP6)(OLEDB)选中之后,就可以在工具栏中选择该控件进行拖拽。其中Adodc中基本连接方法: Adodc1.ConnectionString = “Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=” + App.Path + “hkmdckdb1.mdb”//字符串的连接。Adodc直接双击,可以在栏目中选定数据库的路径也就是Access文件的路径。就会自动生成ConnectionString。本页面的程序代码如下:
Private Sub Command1_Click()//点击按钮触发函数。
If Trim(Text1.Text)<> “" And Trim(Text2.Text)<> ”“ And Trim(Text3.Text)<> ”“ And Trim(Text4.Text)<> ”“ And Trim(Text5.Text)<> ”“ And Trim(Text6.Text)<> ”“ Then
Adodc1.RecordSource = ”select * from stuInfo“
Adodc1.Refresh
Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields(”stuNo“)= Trim(Text1.Text)
Adodc1.Recordset.Fields(”stuName“)= Trim(Text2.Text)
Adodc1.Recordset.Fields(”sex“)= Trim(Text6.Text)
Adodc1.Recordset.Fields(”age“)= Trim(Text3.Text)
Adodc1.Recordset.Fields(”tel“)= Trim(Text4.Text)
Adodc1.Recordset.Fields(”score“)= Val(Trim(Text5.Text))
Adodc1.Recordset.Update
Adodc1.Recordset.Requery
Adodc1.Refresh
Text1.Text = ”“
Text2.Text = ”“
Text3.Text = ”“
Text4.Text = ”“
Text5.Text = ”“
Text6.Text = ”“
MsgBox ”添加成功“, vbOKOnly, ”系统提示“ Else: MsgBox ”信息未填写完整“, vbOKOnly, ”系统提示“ End If End Sub
对于以上解析如下:对于这个页面在业务上我们可以知道,需要点击录入按钮,那么就将各个Text中的内容写入数据库中,那么在数据库中就会生成一条记录,也就是某一个学生的信息情况,那么就完成了学生信息的录入。首先文件进行了一个IF判断:
If Trim(Text1.Text)<> ”“ And Trim(Text2.Text)<> ”“ And Trim(Text3.Text)<> ”“ And Trim(Text4.Text)<> ”“ And Trim(Text5.Text)<> ”“ And Trim(Text6.Text)<> ”“ Then “中间内容先省略”
Else: MsgBox ”信息未填写完整“, vbOKOnly, ”系统提示“ End If End Sub
如果Text1至Text6的内容不等于(<>代表不等于)空字符串。也就是各个内容都输入了的。就执行省略的了中间内容。如果有一个为空,也就是信息未填写全。就执行Else:中的内容 也就是MsgBox ”信息未填写完整“, vbOKOnly, ”系统提示“。这个代表了弹出一个对话框,其中文字写了“信息未填写完整”,按钮上面显示 vbOKOnly。之后结束IF语句,并退出函数。现在对于省略部分的函数进行解析: Adodc1.RecordSource = ”select * from stuInfo“//从stuInfo表格中做一个查询
Adodc1.Refresh
Adodc1.Recordset.AddNew//新增信息
//表格也就是提供的Access的数据库中提供给了stuNo,stuName等字段名,以下就是在记录集中将Text1中的字段写入到stuNo的记录集里,并以此类推,完成该记录集的填充。
Adodc1.Recordset.Fields(”stuNo“)= Trim(Text1.Text)
Adodc1.Recordset.Fields(”stuName“)= Trim(Text2.Text)
Adodc1.Recordset.Fields(”sex“)= Trim(Text6.Text)
Adodc1.Recordset.Fields(”age“)= Trim(Text3.Text)
Adodc1.Recordset.Fields(”tel“)= Trim(Text4.Text)
Adodc1.Recordset.Fields(”score“)= Val(Trim(Text5.Text))
//到这里就成功的完成了记录集的填写
Adodc1.Recordset.Update//将字段更新到数据库中
Adodc1.Recordset.Requery Adodc1.Refresh //将页面中的Text的内容填写为空
Text1.Text = ”“
Text2.Text = ”“
Text3.Text = ”“
Text4.Text = ”“
Text5.Text = ”“
Text6.Text = ”“ MsgBox ”添加成功“, vbOKOnly, ”系统提示“ //弹出方框,表示数据填写成功。
到此数据全部填写完成。并写入数据库。也完成了这个页面的功能。之后的几个页面的内容类似。其中重点在于DataGrid和Adodc的绑定。对于DataGrid和Adodc的绑定在这里举一个小小的例子如下: 1.ADODC1是数据库连接部件
2.Datagrid1是显示数据表中内容的表格
ADODC1需要设置它连接的是哪个数据表.(Adodc1.RecordSource = ”select * from 表名“)Datagrid1需要设置的是它的数据源来自ADODC1.(Set DataGrid1.DataSource = Adodc1)然后2个部件都要刷新!Refresh
Adodc1.ConnectionString = ”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=“ & App.Path & ”1.mdb;Persist Security Info=False“ Adodc1.CommandType = adCmdText Adodc1.RecordSource = ”select * from table“ Adodc1.Refresh Set DataGrid1.DataSource = Adodc1 DataGrid1.Refresh
这个之后,Datagrid1就可以显示1.mdb中table表的内容。
以下是本程序中修改页面的代码如下: Private Sub Command2_Click()
Dim str As String//定义str
Dim stuNo As String
Dim sql As String
stuNo = Text1.Text//获得学号
If stuNo <> ”“ Then
Adodc1.Recordset.Filter = ”stuNo = '“ + stuNo + ”'“//通过学号机型查询
str = Adodc1.Recordset.Fields(”sex“)
If str <> ”男“ Then//如果查询出来的sex不等于男
Adodc1.Recordset.Fields(”sex“)= ”男“
Adodc1.Recordset.Update//将sex字段设置为男,并进行更新
Else
Adodc1.Recordset.Fields(”sex“)= ”女“
Adodc1.Recordset.Update//否则就将字段设置为女,并进行更新
End If
Else:
MsgBox ”学号未输入“, vbOKOnly, ”系统信息“
End If
Adodc1.Recordset.Update//结束IF之后,更新一下Adodc
DataGrid1.Refresh//因为Adodc更新了,而DataGrid和Adodc进行了一次绑定,所以也需要对其进行更新。
End Sub
Private Sub Form_Load()//这个函数是页面载入的时候执行的函数,因为页面载入的时候本身就需要对表格的内容进行填充,将表格的内容填充为数据库中的内容。所以进行页面载入的时候,首先对DataGrid进行更新。
DataGrid1.Refresh End Sub
删除的代码和修改的代码类似,其中的区别在于逻辑判断的区别了最终执行的区别,一个是update一个则是delete。代码如下: Private Sub Command2_Click()
Dim str As String
Dim stuNo As String
Dim sql As String
stuNo = Text1.Text
If stuNo <> ”“ Then//如果学号不为空,也就是该学生信息存在,也只有存在才可以删除
Adodc1.Recordset.Filter = ”stuNo = '“ + stuNo + ”'“
Adodc1.Recordset.Delete//删除操作
Else:
MsgBox ”学号未输入“, vbOKOnly, ”系统信息“
End If
Adodc1.Recordset.Update//同更新类似不做赘述
DataGrid1.Refresh End Sub Private Sub Form_Load()DataGrid1.Refresh End Sub
最后是查询的页面,这个页面稍稍有一点麻烦,因为对于其他页面逻辑较为复杂。代码如下: Private Sub Command1_Click()//点击按钮,执行一下函数
//对字符串进行定义
Dim stuNo As String
Dim StuName As String
Dim ScoreLow As Double
Dim ScoreHigh As Double
Dim sql As String
stuNo = Text1.Text
StuName = Text2.Text //因为查询信息,是根据多个条件进行查询的,在这里进行了一个定义,查询条件主要有一下几项,既是学生学号,学生姓名,学生成绩,学生年龄,以及学生性别。
If stuNo <> ”“ Then//如果学号不为空,就将SQL语句变成之下的语句,用于查询学生学号。
sql = ”select * from stuInfo where stuNo = '“ + Trim(stuNo)+ ”'“
End If
If StuName <> ”“ Then//如果姓名不为空,就将SQL语句变成之下的语句,用于查询学生姓名。
sql = ”select * from stuInfo where stuName = '“ + Trim(StuName)+ ”'“
Text1.Text = ”“
End If
If Text3.Text <> ”“ And Text4.Text <> ”“ Then//这里是分数
ScoreLow = Text3.Text
ScoreHigh = Text4.Text
sql = ”select * from stuInfo where score >= “ + Trim$(ScoreLow)+ ” and score <= “ + Trim$(ScoreHigh)
Text1.Text = ”“
Text2.Text = ”“
End If
If Text5.Text <> ”“ And Text6.Text <> ”“ Then//年龄
sql = ”select * from stuInfo where age >= “ + Trim$(Text5.Text)+ ” and age <= “ + Trim$(Text6.Text)
End If
If Text7.Text <> ”“ Then//性别
sql = ”select * from stuInfo where sex = '“ + Trim$(Text7.Text)+ ”'“
End If
Adodc1.RecordSource = sql
Adodc1.Refresh//更新数据集
Label7.Caption = ”满足条件的一共有 “ + Trim$(Adodc1.Recordset.RecordCount)+ ” 人"
DataGrid1.Refresh//更新显示信息
End Sub
典型案例:2010届我校计算机专业36名考生参加高职单招,80分以上达27人。其中罗幼凤同学得满分100分。被福建师大本科计算机网络专业录取。
心得体会:
请按以上要求补充审改。而后发表。
第五篇:vb成绩判断程序
Private Sub Form_Click()
score = Val(InputBox(“请输入成绩:”))If score >= 60 Then
If score >= 90 Then
Level = “优”
Else
If score >= 80 Then
Level = “良”
Else
If score >= 70 Then
Level = “中”
Else
Level = “及格”
End If
End If
End If
Else
Level = “不及格”
End If
Print Level
End Sub