每当我运行项目时,它都会突出显示"私人sub Lightlightgridrow(grd为msflexgrid,in irow as Long("行并弹出一个带有错误消息的盒子"定义"。我该怎么做才能使它起作用?
Private Sub HighlightGridRow(grd As MSFlexGrid, iRow As Long)
With grd
If .Rows > 1 Then
.Row = iRow
.Col = 1
.ColSel = .Cols - 1
.RowSel = iRow
End If
End With
End Sub
vb6不知道MSFlexGrid
类型是什么,因此它假设它是您尚未定义的用户定义类型。更有可能,您正在尝试使用未引用的组件。您需要转到项目菜单中的组件,并添加您要使用的Flex网格组件。
这并不是这个问题的确切重复,因为它丢失了一个不同的组件,但是您也可以在那里找到更多有用的信息。
似乎MSFlexGrid
可能不是定义的类型,这可能是因为您没有将OCX添加到工具箱中。也许该程序使用MSHFlexGrid
,而您的复制/粘贴代码不合适?
与未注册的OCX无关。对于对象创建异常,更可能失败。
正如彼得·库珀(Peter Cooper Jr(所说,您的项目中可能没有引用MSFLEXGRID。为此,请转到项目 ->组件,然后选中" Microsoft FlexGrid Control 6.0"旁边的框,如果它在列表中。如果不是,则必须单击浏览并手动添加。
如果找不到OCX,请下载:
https://www.opendll.com/index.php?file-download=mmsflxgrd.ocx& arkart = 32bit& version = 6.0.84.18