已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,第5章选择结构程序设计,本章要点:条件语句单行结构条件语句If.Then.Else.块结构条件语句If.Then.EndIf多分支选择语句SelectCase.EndSelectTimer控件,单选按钮和复选按钮,特点:根据条件是否成立,决定程序的执行分支,2,5.1.1单行结构条件语句,1.格式IfThenElse2.功能如果成立,则执行否则执行,3,3.说明(1)可以是:关系表达式布尔表达式数值表达式:0为False;非0为True字符串表达式:0为False;非0为True(2)可以没有Else部分,这时必须有。,例:IfXaaaThenPrintX,4,(3)、:可以有多条语句,各语句之间用冒号隔开。例:IfN0ThenA=A+B:B=B+AElseA=A-B:B=B-A(4)应作为一条语句书写。如果语句太长需要换行,必须在折行处使用续行符号。(5)无论条件是否成立,都具有共同出口例:IfX=0ThenX=1+XElseX=5-XY=1-XPrintY=;Y若X=2Y?若X=-2Y?,共同出口,(6)单行结构条件语句可以嵌套IF.THEN.IF.THEN.ELSE.ELSE,5,【例5-1】设界面如下图所示,用文本框输入x的值,单击“计算Y”按钮时,根据以下公式计算y的值。,PrivateSubCommand1_Click()X=Val(Text1.Text)IfX0ThenY=Log(X)Label3.Caption=Y,程序段2:X=Val(Text1.Text)Y=Log(X)IfX=0ThenY=Abs(X)Label3.Caption=Y,7,5.1.2块结构条件语句,1.格式IfThenElseIfThenElseIfThenElseEndIf,IfThen语句组1Else语句组2EndIf,注意:格式书写格式,8,块结构条件语句的功能:,9,【例5-8】某百货公司为了促销,采用购物打折的优惠办法。1000元以上者,按九五折优惠;2000元以上者,按九折优惠;3000元以上者,按八五折优惠;5000元以上者,按八折优惠;编写程序,输入购物款数,计算并输出优惠价。,分析:设购物款数为x元,优惠价为y元,则优惠付款公式为:x(x=5000),10,设计步骤如下:(1)建立应用程序界面并设置对象属性,如图所示。(2)编写程序代码.命令按钮command1的Click事件代码如下:,ElseIfx3000Theny=0.9*xElseIfx5000Theny=0.85*xElsey=0.8*xEndIfText2.Text=yEndSub,PrivateSubcommand1_Click()DimxAsSingle,yAsSinglex=Val(Text1.Text)Ifx=0Theny=1Elsey=2EndIf,写法二:Ifx=1Theny=10Elsey=20EndIf,12,5.1.3多分支选择语句,1.格式SelectCaseCaseCaseCaseElseEndSelect2.功能:根据测试表达式的值,按顺序匹配Case后的表达式,如果匹配成功,则执行该Case下的语句块,然后转到EndSelect语句之后继续执行。,13,多分支选择语句的功能流程图:,14,3.说明:数值或字符串表达式Case表达式表:表中的表项为如下形式:(1)表达式1,表达式2.如:Case1,3,5(2)表达式1TO表达式2如:Case10TO30CaseATOZ(3)Is如:CaseIs=10CaseIs=0与Case0相同注意:测试表达式的类型应与Case后表达式类型一致,且三种形式可以混用,如:CaseIsB,A,B)例:使用IIf函数求三个变量A、B和C的最大数。MaxAB=IIf(AB,A,B)MaxABC=IIf(MaxABC,MaxAB,C),5.2条件函数,23,5.2.2Choose函数格式:Choose(,.,)功能:当的值为1时,返回的值;当的值为2时,返回的值;。如果的值不是整数,则会先四舍五入为整数。例:将成绩1分、2分、3分、4分和5分转换成相应的等级:不及格(1分,2分)、及格(3分),良(4分),优(5分)。,Grade=Choose(Score,不及格,不及格,及格,良,优),24,1.用途时钟控件(Timer)又称计时器、定时器控件,用于有规律地定时执行指定的工作,适合编写不需要与用户进行交互就可直接执行的代码,如计时、倒计时、动画等。在程序运行阶段,时钟控件不可见2.属性(1)Interval(事件间隔)属性取值范围在0到64767之间(包括这两个数值),单位为毫秒(0.001秒),表示计时间隔。若将Interval属性设置为0或负数,则计时器停止工作。需要屏蔽计时器,将Interval设为0;需要每0.5s产生一个计时器事件,则将Interval设为500;若需要每1s产生一个计时器事件,则将Interval设为1000。(2)Enabled属性无论何时,只要时钟控件的Enabled属性被设置为True而且Interval属性值大于0,则计时器开始工作(以Interval属性值为间隔,触发Timer事件)。通过把Enabled属性设置为False可使时钟控件无效,即计时器停止工作。,5.3计时器控件Timer,25,3.方法:VB没有为时钟控件提供有关的方法。4.事件:时钟控件只能响应Timer事件,当Enabled属性值为True且Interval属性值大于0时,该事件以Interval属性指定的时间间隔发生,需要定时执行的操作即放在该事件过程中完成。,例5-14在窗体上设计一个能按12小时格式和24小时格式进行转换的数字时钟。v5lt14分析:本题目需要使用的函数有3个。Time函数:返回系统时间Hour函数:返回时间表达式中的小时数Format(time,form1.tag)函数:按照指定格式返回系统当前时间。,26,设计步骤如下:1.建立用户界面,如图所示。,2.设置对象属性Form1.tag:hh:mm:ssLabel1.caption:00:00:00Label1.color:白色Label1.bordestyle:1-fixedsinglelabel2.visible:falseTerval:1000,27,3.编写事件代码,PrivateSubTimer1_Timer()Label1.Caption=Format(Time,Form1.Tag)IfHour(Time)12ThenLabel2.Caption=下午ElseLabel2.Caption=上午EndIfEndSub,28,3.编写事件代码,PrivateSubCommand1_Click()IfCommand1.Caption=改为12小时制ThenForm1.Tag=hh:mm:ssAM/PMCommand1.Caption=改为24小时制Label2.Visible=TrueElseForm1.Tag=hh:mm:ssCommand1.Caption=改为12小时制Label2.Visible=FalseEndIfEndSub,29,5.4单选钮、复选框,5.4.1单选钮1.用途单选钮(OptionButton)也称作选择按钮。一组单选钮控件可以提供一组彼此相互排斥的选项,任何时刻用户只能从中选择一个选项,实现一种“单项选择”的功能,被选中项目左侧圆圈中会出现一黑点。,单选按钮,30,2.重要属性(1)Caption:文本标题。设置单选钮的文本注释内容。(2)Alignment属性:0:LeftJustify(缺省)控件钮在左边,标题显示在右边。1:RightJustify控件钮在右边,标题显示在左边。(3)Value属性,True:单选钮被选定False:单选钮未被选定(缺省设置),(4)Style属性0-Standard:标准方式1-Graphical:图形方式说明:在Style属性设置为1时,可使用Picture属性(未选定时的图标或位图)、DownPicture属性(选定时的图标或位图)、DisabledPicture属性(禁止选择时的图标或位图),(5)Enabled属性要禁用某个单选按钮,可将其Enabled属性设置为假。程序运行时,那么就显示为浅灰色,表示无法选取。,31,3.方法SetFocus方法是单选钮控件最常用的方法,可以在代码中通过该方法将Value属性设置为True。与命令按钮相同,使用该方法之前,必须要保证单选钮处于可见和可用状态(即Visible与Enabled属性值均为True)。,4.事件Click事件是单选钮控件最基本的事件,一般情况用户无需为单选钮编写Click事件过程,因为当用户单击单选钮时,它会自动改变状态。例5-15单选钮示例修改例5-14。,32,例5-17设计滚动字幕,使“欢迎使用学生成绩管理系统”字样自右向左反复移动。,设计步骤如下:1。建立如图所示界面,增加一个计时器控件,一个label1和一个command1,四个单选按钮。2.设置属性:四个单选按钮的style属性设为1-graphical。Terval=100,timer.enabled=false3.事件代码:PrivateSubCommand1_Click()IfCommand1.Caption=&s暂停ThenCommand1.Caption=&c继续Timer1.Enabled=FalseElseCommand1.Caption=&s暂停Timer1.Enabled=TrueEndIfEndSub,33,PrivateSubTimer1_Timer()IfLabel1.Left+Label1.Width0ThenLabel1.MoveLabel1.Left-20ElseLabel1.Left=Form1.ScaleWidthEndIfEndSubprivateSubOption1_Click()Label1.FontName=宋体EndSubPrivateSubOption2_Click()Label1.FontName=黑体EndSubPrivateSubOption3_Click()Label1.FontName=隶书EndSubPrivateSubOption4_Click()Label1.FontName=楷体_GB2312EndSub,34,5.4.2复选框或检查框,1.用途复选框(CheckBox)也称作检查框、选择框。一组复选框控件可以提供多个选项,它们彼此独立工作,所以用户可以同时选择任意多个选项,实现一种“不定项选择”的功能。选择某一选项后,该控件将显示,而清除此选项后,消失。,2.重要属性Caption、Alignment、Style与单选钮相同,复选框,35,复选框的Value属性与单选按钮不同,其值为数值型数据,可取0,1,2,复选框与单选按钮Value属性的比较,3.Click事件是复选框控件最基本的事件。无论何时单击checkbox控件都将触发click事件,然后编写应用程序,根据复选框的状态执行某些操作。4.举例:在例5-17基础上加两个复选框控件,36,其他事件代码不变,增加两个复选框按钮的click事件代码。PrivateSubCheck1_Click()IfCheck1.Value=1ThenLabel1.FontUnderline=TrueElseLabel1.FontUnderline=FalseEndIfEndSubPrivateSubCheck2_Click()IfCheck2.Value=1ThenLabel1.FontItalic=TrueElseLabel1.FontItalic=FalseEndIfEndSub,37,本章小结:,1.单行结构条件语句IfThenElse
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 劳务分包合同在建筑行业的应用
- 初中体育 健美操提高班第2次课教案
- 2024年二年级品生下册《机智勇敢保安全》教案 山东版
- 2024年学年八年级语文上册 第四单元 地球我们的家园 第15课《大树和我们的生活》教案2 沪教版五四制
- 2023三年级数学上册 七 庆元旦-时、分、秒的认识 信息窗2 有关时间的计算第1课时教案 青岛版六三制
- 2024-2025学年八年级语文下册 第六单元 22《礼记》二则教案 新人教版
- 2024-2025学年高中数学 第三章 函数的概念与性质 3.2.2 奇偶性教案 新人教A版必修第一册
- 最高额保证合同(2篇)
- 租船合同模版(2篇)
- 运输项目合同(2篇)
- 商务星球版七年级上册地理知识点归纳总结
- 四川创联专业技术人员学习-2023数字经济驱动与发展公需科目答
- 【环氧树脂复合材料研究进展文献综述6000字】
- 催审稿邮件怎么写范文
- 2023《中华人民共和国合同法》
- 悦纳自我向阳而生心理健康教育主题班会课件
- DIN-EN-ISO-2409-CN国际标准文档
- 数字经济时代“95后”新生代员工管理挑战、成因及对策分析
- 职业卫生检测考试真题十五
- Unit+3+Celebrations+Topic+Talk 高中英语北师大版(2019)必修第一册
- 2023建设工程智慧消防系统技术规程
评论
0/150
提交评论