欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

回复下标超界咋回事

更新时间: 2014-01-05 02:27:46 责任编辑: Author_N1

 

回复下标超界怎么回事?
回复下标超界怎么回事?
thisform.List1.clear
DIMENSION c(77,5)
DIMENSION m(1,10)
m(1,1)=35
FOR i=1 TO 77
FOR k=1 TO 35
thisform.List1.additem(ALLTRIM(STR(k,2)))
ENDFOR
FOR j=1 TO 5
c(i,j)= INT(m(1,1)*RAND()+1)
thisform.List1.RemoveListItem(c(i,j))
m(1,1)=m(1,1)-1
ENDFOR
thisform.list1.clear   
ENDFOR
thisform.timer1.Enabled=.F.


thisform.List1.RemoveListItem(c(i,j))
回复下标超界
怎么回事?


--参考方法--
For k=1 To 35
Thisform.List1.AddItem(Alltrim(Str(k,2)))
Endfor
这段向 List1 添加了35行。

For i=1 To 77
要循环77次,每次循环都  Thisform.list1.Clear 
所以当循环到 36 时,就 Thisform.List1.RemoveListItem(c(i,j)) 报错了,因为 List1 只有35行
--参考方法--
Create Cursor t1 (zd1 i)
For lnI=1 To 35
Insert Into t1 Values (lnI)
Endfor
Rand(-1)
Select Int(Reccount('t1')*Rand()+1) As 随机数,* From t1 Order By 1
*-- 这时你看看 zd1 列就是不重复的 1-35 的随机数
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:27:46
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/10112/
本文WWW.DOC100.NET DOC100.NET版权所有。