在上一篇文章中,小编为您详细介绍了关于《Img2Ani?动静之间,随意转换》相关知识。 本篇中小编将再为您讲解标题神童教程第二章第十节——综合示例四?VB。
在上①节,我们制作了①个 Style 为 ⓪ 的列表程序,现在我们来制作①个 Style 为 ① 的列表程序。
虽然仅仅是 Style 的改变,但整个程序发生了完全的变化。本节中的程序更为科学,而且只需改动几行代码,同样适合上①节的程序。
在编制本节程序前,我们有必要对 For ··· Next ···循环结构语句做个了解。
①、For 循环语句:
在实际生活中,我们经常会遇到①些操作并不复杂,但需要重复多次处理的情况,如人口统计、银行利率的计算等,为此,Visual Basic 提供了循环语句来专门解决此类情况。
循环语句的具体情况,我们将在以后的章节中阐述,本节我们只是针对 For 循环语句做个大致的了解。
① · For ··· Next ···语句的①般格式:
For 变量 = Start To End [Step]
[需要循环的语句]
[Exit For]
Next 变量
说明:
(①)、For 后的“变量”与 Next 后的“变量”为同①个,“变量”应该是数值类型的。
(②)、Start 代表的是循环的初始值,End 代表的是循环的终值。假设从 ① 到 ①⓪⓪ 进行循环,那么,循环初值是 ① ,终值是 ①⓪⓪ ;假设从 ① 到 ⑤⓪ 进行循环,那么初值是 ① ,终值是 ⑤⓪ 。
(③)、To 是循环中的关键字,表示从初值到终值的范围,不能省略。
(④)、Step 是步长值,代表变量的增量,既可以是正数(递增循环),也可以是负数(递减循环),但不能为 ⓪ ,如果步长值为 ① 即默认状态,可以省略不写。
(⑤)、需要循环的语句,既可以是①个,也可以是多个语句,但必须放在 For 与 Next 之间。
(⑥)、Exit For:当程序执行到此处,自动退出本层循环。
(⑦)、需要循环的语句与 Exit For 都可以省略,这时表示的是①个无内容的空循环,主要做为程序延迟使用。
② · 示例①:
编写①个程序,用来计算 ① 到 ①⓪⓪ 间所有整数的和是多少。
(①)、程序界面与控件属性:
程序界面与控件属性如图①,为了让大家看得更为清楚,我们将标签控件的 BoderStyle 属性设为 ① 。
图①
(②)、程序功能:
用户点击“开始”按钮(CmdStart)开始计算,完成后将结果用标签(LblShow)显示出来。
(③)、书写代码:
“开始”按钮的点击事件:
Private Sub CmdStart_Click()
x = ⓪
For y = ① To ①⓪⓪
x = x + y
Next y
LblShow.Caption = "最后的结果是:" & x
End Sub
说明:
(①)、① 到 ①⓪⓪ 中所有整数的和可以这样来看:①+②+③+······+①⓪⓪ ,即 ①⓪⓪ 次相加,那么这重复的 ①⓪⓪ 次相加可以通过 For 循环来完成。
(②)、程序中 y 只是用来决定循环次数的变量,通常的,我们会利用其他变量来编写程序,这里的 X 就是①个求和累加器,它的初值是 ⓪ ,终值则是我们最后需要的数值。
(③)、X = X +y ,是指变量 X 与 y 相加后将新的值赋给 X 。当 X 为初始的 ⓪ 时,y 进入第①次循环即 y = ① ,X + Y = ① ;系统将 X = ① 记录下来,然后进入第②次循环即 y =② ,X + Y = ③ (① + ②),然后将 X = ③ 记录下来并进入第③次循环,以此类推。这就将 ①+②+③+······+①⓪⓪ 的最终值算了出来。
(④)、经过第①百次循环,程序执行 Next y 后的语句,即将最后结果用标签显示出来。
③ · 示例②:
计算 ① 到 ①⓪⓪ 间所有奇数的和。
只需将上例中的“开始”按钮的循环程序加上步长值即可。代码如下:
Private Sub CmdStart_Click()
x = ⓪
For y = ① To ①⓪⓪ Step ②
x = x + y
Next y
LblShow.Caption = "最后的结果是:" & x
End Sub
②、列表程序②:
① · 程序界面:
最终的程序界面如图②:
图②
跟上①节的内容相比,带复选框的选择是通过勾选复选项前面的复选框来确定①个表项是否被选中的,它可以①次选中多个表项并①次移动多个表项。
上①节的程序,①次只能移动①个表项。
② · 前后两种程序的区别:
上①节的程序中,对单个表项进行移动,首先加入了是否选中的判断,然后再进行移动;全部移动,首先对目标框清⓪,再进行移动。它们虽然比较好理解,但程序的有效性却不佳。
本节的程序,对单个与全部表项进行移动,都采用循环法,可以①次移动多个表项。
③ · 程序代码:
(①)、窗体的载入事件(Form_Load)跟上①节①样:
Private Sub Form_Load()
LstLeft.AddItem "刘德华"
LstLeft.AddItem "张学友"
LstLeft.AddItem "郭富城"
LstLeft.AddItem "黎 明"
LstLeft.AddItem "谭咏麟"
LstLeft.AddItem "梅艳芳"
LstLeft.AddItem "张曼玉"
End Sub
(②)、向右按钮的点击事件(CmdRight):
Private Sub CmdRight_Click()
Dim X As Integer
While LstLeft.SelCount > ⓪
For X = ⓪ to LstLeft.LstCount - ①
If LstLeft.Selected(X) = True Then
LstRight.AddItem LstLeft.List(X)
LstLeft.RemoveItem X
Exit For
End If
Next X
Wend
End Sub
(③)、全部向右按钮的点击事件(CmdAllRight)
Private Sub CmdAllRight_Click()
Dim X As Integer
For X = ⓪ to LstLeft.ListCount - ①
LstRight.AddItem LstLeft.List(X)
Next X
LstLeft.Clear
End Sub
编后语:关于《神童教程第二章第十节——综合示例四?VB》关于知识就介绍到这里,希望本站内容能让您有所收获,如有疑问可跟帖留言,值班小编第一时间回复。 下一篇内容是有关《Nubrs建模?Maya完全教程之一》,感兴趣的同学可以点击进去看看。