VB6 Compile Error: User-defined type not defined

VB6 Compile Error: User-defined type not defined

我正在使用 Visual Basic 6 编写方程绘图器,但我在 运行 我的程序中遇到错误。我已将错误缩小到以下代码块。

Option Explicit

Private Sub cmdGraph_Click()
Dim script_control As MSScriptControlCtl.ScriptControl
Dim x As Single
Dim y1 As Single
Dim y2 As Single

' Make a script control.
Set script_control = New MSScriptControl.ScriptControl
script_control.Language = "VBScript"

' Define the function.
script_control.AddCode _
    "Function TheFunction(X)" & vbCrLf & _
    "    TheFunction = " & txtExpression.Text & vbCrLf & _
    "End Function"

' Graph the equation.
y1 = script_control.Eval("TheFunction(" & xmin & ")")
For x = xmin + Dx To xmax Step Dx
    ' Evaluate the next value.
    y2 = script_control.Eval("TheFunction(" & x & ")")

    ' Draw the next line.
    picGraph.Line (x - Dx, y1)-(x, y2)

    ' Save the current Y value.
    y1 = y2
Next x

End Sub

我检查了组件:

所以我认为问题不在于组件。

突出显示的代码是:

New MSScriptControl.ScriptControl

在线号。我提供的代码块的 10。任何有关问题可能的帮助将不胜感激,谢谢。

编辑: 我将代码块的第 4 行更改为:

Dim script_control As MSScriptControl.ScriptControl

反对:

Dim script_control As MSScriptControl.ScriptControl

突出显示的文本现在是代码块的第 4 行。

MSScriptControlCtl 是一个控件(组件)。

MSScriptControl 是一个 reference-able 对象。

要使用 MSScriptControl 并实例化它:

Set script_control = New MSScriptControl.ScriptControl

您需要 select Microsoft Script Control 通过 Project-References,而不是组件中的 Microsoft Script Control。