MSFlexgrid的VB6运行时错误

时间:2017-04-20 11:02:36

标签: vb6

每当我运行我的项目时,它会突出显示" Private Sub HighlightGridRow(grd As MSFlexGrid,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

3 个答案:

答案 0 :(得分:3)

VB6不知道类型MSFlexGrid是什么,因此它假设它是您尚未定义的用户定义类型。更有可能的是,您正在尝试使用未引用的组件。您需要转到“项目”菜单中的“组件”并添加您尝试使用的Flex Grid组件。

这与this question不完全相同,因为它缺少一个不同的组件,但您也可以在那里找到更多有用的信息。

答案 1 :(得分:1)

似乎MSFlexGrid可能不是定义的类型,可能是因为您没有将OCX添加到ToolBox。也许该程序使用MSHFlexGrid而不是你有复制/粘贴代码不适合?

不应该与OCX没有注册有任何关系。相反,这很可能会在对象创建异常上失败。

答案 2 :(得分:0)

正如Peter Cooper Jr所说,您可能没有在项目中引用MSFlexGrid。为此,请转到“项目”->“组件”,然后选中“ Microsoft FlexGrid Control 6.0”旁边的框。如果没有,您将必须单击浏览并手动添加它。

如果找不到ocx,只需下载:

https://www.opendll.com/index.php?file-download=msflxgrd.ocx&arch=32Bit&version=6.0.84.18