【问题标题】:VB6 runtime error of MSFlexgridMSFlexgrid 的 VB6 运行时错误
【发布时间】:2019-07-26 05:07:42
【问题描述】:

每当我运行我的项目时,它都会突出显示“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

【问题讨论】:

  • 第一次测试:新建一个应用程序,在项目菜单中添加组件并搜索microsoft flexgrid。如果它没有出现,你还没有安装它。 msflexgrid 是 vb6 的一部分,所以你可以不安装 vb6 吗?请解释一下。

标签: vb6


【解决方案1】:

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

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

【讨论】:

    【解决方案2】:

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

    应该与未注册的 OCX 无关。相反,这更有可能因对象创建异常而失败。

    【讨论】:

      【解决方案3】:

      正如 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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多