每当我运行我的项目时,它都会突出显示"Private Sub HighlightGridRow(grd As MSFlexGrid,iRow As Long)“行,并弹出一个带有错误消息"User-defined HighlightGridRow not defined”的对话框。我能做些什么来让它工作呢?
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发布于 2017-04-20 21:07:07
VB6不知道MSFlexGrid类型是什么,所以它假定它是您尚未定义的用户定义类型。更有可能的是,您正在尝试使用未被引用的组件。您需要转到Project菜单中的Components并添加您正在尝试使用的Flex Grid组件。
这不是this question的完全相同的副本,因为它缺少一个不同的组件,但您也可以在那里找到更多有用的信息。
发布于 2017-04-21 04:50:34
似乎MSFlexGrid不是已定义的类型,可能是因为您没有将OCX添加到ToolBox中。也许程序使用的是MSHFlexGrid,而你的复制/粘贴的代码并不合适?
不应该和OCX没有注册有任何关系。相反,这更有可能在对象创建异常时失败。
发布于 2019-07-26 05:02:32
正如Peter Cooper Jr所说,您的项目中可能没有引用MSFlexGrid。为此,请转到项目->组件,然后选中"Microsoft FlexGrid Control6.0“旁边的复选框(如果它在列表中)。如果没有,您必须单击浏览并手动添加它。
如果您找不到ocx,请下载它:
https://www.opendll.com/index.php?file-download=msflxgrd.ocx&arch=32Bit&version=6.0.84.18
https://stackoverflow.com/questions/43517708
复制相似问题