编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛  
全能 ASP / PHP / ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
发新话题
打印

[求助]For...Next语句 先谢谢了!

[求助]For...Next语句 先谢谢了!

我用了两个嵌套结果说:“编译错误 For Control 控件变量已在使用”?! 那一位高手能帮忙解答一下?如何办。 先谢谢了!

For Inu_pic_dbl(0) = 0 To Inu_Pic(Inu_Index_byt).ScaleWidth Inu_pic_dbl(1) = Inu_pic_dbl(0) - Inu_Pic(Inu_Index_byt).ScaleWidth \ 2 For Inu_pic_dbl(2) = 0 To Inu_Pic(Inu_Index_byt).ScaleHeight

If Inu_Pic(Inu_Index_byt).Point(Inu_pic_dbl(1), Inu_pic_dbl(2)) <> bgcol Then If Inu_pic_dbl(1) > 0 And Inu_pic_dbl(1) < Inu_Pic(Inu_Index_byt).ScaleWidth - 1 And Inu_pic_dbl(2) > 0 And Inu_pic_dbl(2) < Inu_Pic(Inu_Index_byt).ScaleHeight - 1 Then 'PicTarget.PSet (Inu_pic_dbl(0), Inu_pic_dbl(2)), PicSource.Point(Inu_pic_dbl(1), Inu_pic_dbl(2)) frmMain.PSet (Inu_pic_dbl(0) * 15 + Inu_x, Inu_pic_dbl(2) * 15 + Inu_y), Inu_Pic(Inu_Index_byt).Point(Inu_pic_dbl(1), Inu_pic_dbl(2)) End If End If Next Inu_pic_dbl(2) Next Inu_pic_dbl(0)

TOP

For...Next 语句

以指定次数来重复执行一组语句。

语法

For counter = start To end [Step step] [statements] [Exit For] [statements]

Next [counter]

For…Next 语句的语法具有以下几个部分:

部分 描述 counter 必要参数。用做循环计数器的数值变量。这个变量不能是布尔或数组元素。 start 必要参数。counter 的初值。 End 必要参数,counter 的终值。 Step 可选参数。counter 的步长。如果没有指定,则 step 的缺省值为 1。 Statements 可选参数。放在 For 和 Next 之间的一条或多条语句,它们将被执行指定的次数。

说明

step 参数可以是正数或负数。step 参数值决定循环的执行情况,如下所示:

值 循环执行,如果 正数或 0 counter <= end 负数 counter >= end

当所有循环中的语句都执行后,step 的值会加到 counter 中。此时,循环中的语句可能会再次执行(基于循环开始执行时同样的测试),也可能是退出循环并从 Next 语句之后的语句继续执行。

提示 在循环中改变 counter 的值,将会使程序代码的阅读和调试变得更加困难。

循环中可以在任何位置放置任意个 Exit For 语句,随时退出循环。 Exit For经常在条件判断之后使用,例如 If...Then,并将控制权转移到紧接在 Next 之后的语句。

可以将一个 For...Next 循环放置在另一个 For...Next 循环中,组成嵌套循环。不过在每个循环中的 counter 要使用不同的变量名。下面的体系结构是正确的:

For I = 1 To 10 For J = 1 To 10 For K = 1 To 10 ... Next K Next J Next I

注意 如果省略 Next 语句中的 counter,就像 counter 存在时一样执行。但如果 Next 语句在它相对应的 For 语句之前出现,则会产生错误。

四月天原创文学网 http://yc.4yt.net

TOP

谢谢您了!原来是数组在作怪呀!

TOP

发新话题