版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、5.1 数组的使用 5.2 控件数组 5.3 列表框与组合框 5.4 小结,实例,本章实例,实例5.1,实例5.2,实例5.3,实例5.4,实例5.5,实例5.6,实例5.7,实例5.8,实例5.9,实例5.10,实例5.11,【引例】 计算20个数据的平均值。程序运行时随机产生20个两位整数显示在上面标签中;单击 “平均值”按钮时,计算20个数据的平均值显示在下面的标签中。,5.1 数组的使用,操作步骤,1、界面设计,2、编写窗体的Load事件,Private Sub Form_Load() End Sub,生成20个1099间的随机数,累加20个随机数,连接20个随机数,显示在标签中,2、
2、编写窗体的Load事件,Private Sub Form_Load() End Sub,生成20个1099间的随机数,累加20个随机数,连接20个随机数,显示在标签中,For i = 1 To 20 Next i,1,1,1,For i = 1 To 20 Next i,2、编写窗体的Load事件,Private Sub Form_Load() End Sub,生成20个1099间的随机数,累加20个随机数,连接20个随机数,显示在标签中,1,1,1,a = Int(Rnd * 90) + 10,s = s + a,L1.Caption = L1.Caption Tab(i Mod 10) *
3、 6); Next i cmdSort.SetFocus End Sub,输出一个空行,每输出10个数据后换行,(4)编写“排序”命令按钮的单击事件代码,【实例5.5】在窗体上装载一幅图片,再加1个计时器控件。当程序运行时,计时器控件工作,窗体上不断飘落直径不等的白色圆,酷似下雪。,操作步骤,(1)设计用户界面,(2)定义窗体级数组 Dim Snow(1 To 500, 2) As Integer,含有500行、3列元素,Snow(1, 0)Snow(1, 1)Snow(1, 2) Snow(2, 0)Snow(2, 1)Snow(2, 2) Snow(500, 0)Snow(500, 1)S
4、now(500, 2),等价于0 To 2,雪花在窗体上的x坐标,雪花在窗体上的y坐标,y值增量,一个雪花的信息,Private Sub Form_Load() FillColor = vbWhite FillStyle = 0 Randomize For i = 1 To 500 Snow(i, 0) = Int(Rnd * frmEx5_5.Width) Snow(i, 1) = Int(Rnd * frmEx5_5.Height) Snow(i, 2) = 20 + Rnd * 50 Next i End Sub,(3)编写窗体的装载事件过程代码,第i个雪花,(4)编写计时器的Timer
5、事件代码,Private Sub tmrSnow_Timer() For i = 1 To 500 Snow(i, 1) = Snow(i, 1) + Snow(i, 2) If Snow(i, 1) frmEx5_5.Height Then Snow(i, 1) = 0 Snow(i, 0) = Int(Rnd * frmEx5_5.Width) End If Circle (Snow(i, 0), Snow(i, 1), 20 * Rnd, vbWhite Next i frmEx5_5.Cls End Sub,改变i雪花的y坐标,Y坐标越界时,5.2 控件数组,【实例5.6】窗体中有1个
6、按钮、5个标签、1个包含10个单选按钮的控件数组。程序运行时,单击“测试” 按钮,在标签中随机显示一个交通标识名,用户单击相应单选按钮后,程序提示结果。,操作步骤,(1)设计用户界面,添加控件数组的方法,先画出第1个控件,设置其属性,通过复制的方法画第2控件,并设置相同的名称属性,(2)定义窗体级字符型数组,Dim tname(9) As String,根据交通标识图的个数定义数组的大小,控件数组的概念,类型相同且名称属性相同的一组控件,通过Index属性区分各控件,optPicture(0)、optPicture(1) optPicture(9),(3)编写窗体的装载事件过程代码,Priva
7、te Sub Form_Load() Dim i As Integer For i = 0 To 9 optPicture(i).Value = False Next i lblPrompt2.Visible = False lblAnswer.Visible = False lblEvaluate.Visible = False,控件数组元素,tname(0) = 步行街 tname(1) = 机动车道 tname(2) = 交叉路口 tname(3) = 注意危险 tname(4) = 注意信号灯 tname(5) = 限高3.5米 tname(6) = 限重10吨 tname(7) =
8、禁止掉头 tname(8) = 禁止停留 tname(9) = 禁止非机动车左转 End Sub,(4)编写“测试”按钮的单击事件过程代码,Private Sub cmdTest_Click() Dim i As Integer For i = 0 To 9 optPicture(i).Value = False Next i lblPrompt2.Visible = False lblAnswer.Visible = False lblEvaluate.Visible = False i = Int(Rnd * 10) lblTest.Caption = tname(i) End Sub,(
9、5)编写单击单选按钮控件数组元素的代码,Private Sub optPicture_Click(Index As Integer) lblPrompt2.Visible = True lblAnswer.Visible = True lblEvaluate.Visible = True lblAnswer.Caption = tname(Index) If lblAnswer.Caption = lblTest.Caption Then lblEvaluate.ForeColor = vbRed lblEvaluate.Caption = 恭喜你!回答正确! Else lblEvaluate
10、.ForeColor = vbBlue lblEvaluate.Caption = 很遗憾,回答错误。 End If End Sub,单击任意一个单选按钮时触发,根据其值判断所击的是哪一个,【实例5.7】窗体中有1个标签、1个包含10个单选按钮的控件数组。程序运行时,单击某一单选按钮,在标签中显示相应交通标识的名称。,操作步骤,(1)设计用户界面,(2)编写单击控件数组元素的代码,Private Sub optPicture_Click(Index As Integer) Select Case Index Case 0 lblShow.Caption = 步行街 Case 1 lblShow
11、.Caption = 机动车道 Case 2 lblShow.Caption = 交叉路口 Case 3 lblShow.Caption = 注意危险,常用Select-Case语句,Case 4 lblShow.Caption = 注意信号灯 Case 5 lblShow.Caption = 限高3.5米 Case 6 lblShow.Caption = 限重10吨 Case 7 lblShow.Caption = 禁止掉头 Case 8 lblShow.Caption = 禁止停留 Case 9 lblShow.Caption = 禁止非机动车左转 End Select End Sub,5
12、.3.1 列表框 5.3.2 组合框,5.3列表框与组合框,【实例5.8】窗体中有1个标签,1个列表框和2个按钮。程序运行时列表框中显示“北京”、“上海”、“天津”和“重庆”;单击“添加”按钮,出现输入框,用户输入新城市名后随即将该城市名添加到列表框中;选中列表框中某项并单击“删除”按钮,从列表框中删除该城市名。,5.3.1 列表框,操作步骤,(1)在窗体中添加所需控件,列表框控件在工具箱中的图标是 。,(2)编写窗体的装载事件过程代码,Private Sub Form_Load() lstCity.AddItem 北京 lstCity.AddItem 上海 lstCity.AddItem 天
13、津 lstCity.AddItem 重庆 End Sub,向列表框中添加项目,列表框的AddItem方法调用格式,列表框名.AddItem 字符串 ,索引号,列表框中项的索引号从0开始 出现在第n个位置上的项索引号为n-1 省略索引号时新项被添加到列表框的尾部,(3)编写“添加”命令按钮的单击事件过程代码,Private Sub cmdAdd_Click() Dim city As String city = InputBox(请输入城市名, 输入框) lstCity.AddItem city End Sub,(4)编写“删除”命令按钮的单击事件过程代码,Private Sub cmdDele
14、de_Click() lstCity.RemoveItem lstCity.ListIndex End Sub,删除指定的项目,所选项的索引号,当没选中任何项时,ListIndex属性值为-1,RemoveItem方法调用格式,列表框名.RemoveItem 索引号,删除第1项:,lstCity.RemoveItem 0,删除用户所选项:,lstCity.RemoveItem lstCity.ListIndex,If lstCity.ListIndex -1 Then lstCity.RemoveItem lstCity.ListIndex Else MsgBox 请先选择! End If,【
15、实例5.9】程序运行时随机产生100个两位整数添加在左列表框中;单击左列表框中某项,该列表项移到右列表框中;单击“”按钮则将左列表框中所有项移到右列表框中;单击“还原”按钮,左列表框中显示原有100个整数,右列表框清空。,操作步骤,(1)设计用户界面,(2)定义窗体级变量,Dim a(99) As Integer,(3)编写窗体装载事件过程代码,Private Sub Form_Load() For i = 0 To 99 a(i) = Int(Rnd * 90) + 10 Next i add End Sub Private Sub add() For i = 0 To 99 lstLeft
16、.AddItem a(i) Next i End Sub,同一个数组,(4)编写左边列表框的单击事件过程代码,Private Sub lstLeft_Click() 在左边列表框所选项添加到右边列表框 删除左边列表框中所选项 End Sub,lstRight.AddItem lstLeft.Text,lstLeft.RemoveItem lstLeft.ListIndex,(5)编写“”按钮的单击事件过程代码,Private Sub cmdMove_Click() 左边所有项添加到右边列表框 删除左边所有项 End Sub,(5)编写“”按钮的单击事件过程代码,Private Sub cmdM
17、ove_Click() 左边所有项添加到右边列表框 删除左边所有项 End Sub,lstRight.AddItem lstLeft.List(0) lstRight.AddItem lstLeft.List(1) lstRight.AddItem lstLeft.List(k),最后一项索引号,(5)编写“”按钮的单击事件过程代码,Private Sub cmdMove_Click() 左边所有项添加到右边列表框 删除左边所有项 End Sub,lstRight.AddItem lstLeft.List(0) lstRight.AddItem lstLeft.List(1) lstRight
18、.AddItem lstLeft.List(k),For i = 0 To lstLeft.ListCount - 1 lstRight.AddItem lstLeft.List(i) Next i,列表项的总数目,lstLeft.Clear,(6)编写“还原”按钮的单击事件过程代码,Private Sub cmdReturn_Click() lstLeft.Clear lstRight.Clear add End Sub,不必重复写,【实例5.10】程序运行时随机产生100个两位整数添加在左列表框中;选中左列表框中若干项后,单击“复制”按钮,将选中的项复制到右列表框中;单击“移动”按钮,将所
19、选项目移动到右列表框中。,操作步骤,(1)设计用户界面,(2)编写窗体装载事件过程代码,Private Sub Form_Load() For i = 1 To 100 lstLeft.AddItem Int(Rnd * 90) + 10 Next i End Sub,(3)编写“复制”按钮的单击事件过程代码,Private Sub cmdCopy_Click() For i = 0 To lstLeft.ListCount - 1 If lstLeft.Selected(i) = True Then lstRight.AddItem lstLeft.List(i) End If Next i
20、 End Sub,第i个列表项被选中,(4)编写“移动”按钮的单击事件过程代码,Private Sub cmdMove_Click() Do While i = lstLeft.ListCount - 1 If lstLeft.Selected(i) = True Then lstRight.AddItem lstLeft.List(i) lstLeft.RemoveItem i Else i = i + 1 End If Loop End Sub,将While语句改为For语句?,【实例5.11】窗体中有5个标签和1个组合框。程序运行时在组合框中显示5个学生的姓名,组合框的文本框中显示第1个
21、学生的姓名,2个标签中分别显示该学生的学号和成绩;单击组合框中某一姓名或在组合框中输入已有学生姓名,在2个标签中分别显示该学生的学号和成绩;若输入的学生不存在,在消息框中显示“无此人!”。,5.3.2 组合框,操作步骤,(1)在窗体中添加所需控件。组合框控件在工具箱中的图标是 。,(2)编写窗体装载事件过程代码,Private Sub Form_Load() cboName.AddItem 孙丹丹 cboName.AddItem 赵颖 cboName.AddItem 刘晓磊 cboName.AddItem 张鹏 cboName.AddItem 李立新 cboName.Text = cboName.List(0) lblNum.Caption = 053301 lblScore.Caption = 90 End Sub,将列
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度洗浴中心特色服务项目开发与运营合同4篇
- 2025年度智能制造车间承包运营管理合同协议书2篇
- 2024版物联网技术开发合同
- 2025年度橱柜与厨房设施安装服务合同包含后期维护保障3篇
- 2024远洋渔业运输合作协议
- 2025年工业厂房出租安全生产监督协议书模板3篇
- 2025年度文化产品代理合同终止协议范本4篇
- 2025年度住宅小区车位租赁纠纷调解服务合同4篇
- 2025年度新能源汽车充电设施建设合作合同4篇
- 2025年度生物制药研发项目出资入股分红协议书3篇
- 国家自然科学基金项目申请书
- 电力电缆故障分析报告
- 中国电信网络资源管理系统介绍
- 2024年浙江首考高考选考技术试卷试题真题(答案详解)
- 《品牌形象设计》课件
- 仓库管理基础知识培训课件1
- 药品的收货与验收培训课件
- GH-T 1388-2022 脱水大蒜标准规范
- 高中英语人教版必修第一二册语境记单词清单
- 政府机关保洁服务投标方案(技术方案)
- HIV感染者合并慢性肾病的治疗指南
评论
0/150
提交评论