引用对象数组中的对象方法失败

昵称不腻 2004-01-17 10:35:45
我在程序里创建了一个对象数组,在调用对象方法时报错:
未处理的"System.NullReferenceException"类型的异常出现在WareHouse.exe中
其它信息:未将对象引用设置到对象的实例

程序如下:
Boxs(SelIndex).detete()

用这个也一样:

Dim TempBox As New MYControls.Box
TempBox = Boxs(SelIndex)
TempBox.Delete()

请问该怎么解决!
...全文
88 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
昵称不腻 2004-01-18
  • 打赏
  • 举报
回复
这两天人挺少啊!都回家过年了?
昵称不腻 2004-01-17
  • 打赏
  • 举报
回复
谢谢楼上的回答,不过还是只能删掉最后一个添加的对象,原来的方法删除别的对象时会报错,现在不报错了,但也删不掉
bucher 2004-01-17
  • 打赏
  • 举报
回复
建议采用类似于Layer1.Controls.Remove(Boxs(i).ControlID)的方法
对象通常建议处理销毁过程,而不是自己进行销毁调用。把对象销毁放在外层控制比较好。
昵称不腻 2004-01-17
  • 打赏
  • 举报
回复
这是添加对象的代码:
ReDim Boxs(i)
Boxs(i) = New MYControls.Box
Boxs(i).ShowIndex = i
Boxs(i).Parent = Layer1
Boxs(i).SizeMode = MYControls.Box.EScaleModes.mm
Boxs(i).ScalePX = Layer1.ScaleX
Boxs(i).ScalePY = Layer1.ScaleY
Boxs(i).BLength = CLng(Val(TextBox1.Text))
Boxs(i).BWidth = CLng(Val(TextBox2.Text))
Boxs(i).PLeft = 0
Boxs(i).PTop = 0
Boxs(i).BHeight = 100
Boxs(i).PositionID = Boxs(i).Layer & i.ToString
Layer1.Controls.Add(Boxs(i))
i += 1
birdzxy 2004-01-17
  • 打赏
  • 举报
回复
给对象数组的每项赋予对象实例了吗?

16,718

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧