VB程序运行时 出现 事实错误 424 要求对象 是怎么回事?

来源:百度知道 编辑:UC知道 时间:2024/06/23 00:53:36
RT 程序代码应该没有问题啊 郁闷了 不知可有热心人解答。。。
程序代码片段:
Private Sub Command13_Click()
If List1.ListIndex > -1 Then
Load Layer
Layer.LayerIndex = List1.ListIndex + 1
Layer.LoadProp
Layer.Show vbModal
End If
End Sub

对性的是 属性 按钮

引用属性和方法经常需要一个明确的对象限定符。此错误有以下的原因和解决方法:

当引用对象属性或方法时,没有提供正确的对象限定符。
如果没有提供的话,指定一个对象限定符。例如,从窗体的模块中引用窗体属性时,虽然可以省略对象的限定符,但是当从标准模块中引用一个属性时,则必须指定限定符。

提供一个对象限定符,但不能识别出对象。
检查对象限定符的拼写,并确保在所引用的程序中此对象是可见的。在 Collection 对象中,请检查每个 Add 方法的使用,以确保语法应正确,以及所有部件的拼写应正确。

提供了正确的对象限定符,但调用的其他部分有错误。
将非法路径当作主机应用程序中“文件打开”命令的参数会引起错误。请检查参数。

在指定对象的引用时,没有使用 Set 语句。
如果指定 CreateObject 调用的返回值为 Variant 变量,那么如果省略 Set 语句的话,此错误就可能会发生。在以下的代码示例中,创建一 个 Microsoft Excel 隐含实例,且返回 Variant RetVal 的缺省属性 ("Microsoft Excel" 字符串)并赋给 Variant RetVal,然后将 RetVal 当作对象引用时,发生了此错误:

当给引用的对象赋值时,请使用 Set 语句。

试图对正常对象执行无效动作时,就会发生此错误。例如,如对只读属性赋值时,就有可能接收到此错误。
请检查对象的文档以确保执行的动作都正确。
Layer.LayerIndex或
Layer.LoadProp 或
Layer.Show vbModal
中的对象不存在。看看是不是拼写错误,还是根本没有定义对象。

你得在窗体上画一个名称为Command13的CommandButton和一个名称为List1的ListBox

If List1.ListIndex > -1
你看看是不是这个问题?
如果我没有说错的话
ListIndex应该是从0 为起点的!
你看看