vb 运行text里输入函数

vb 如何运行text里输入函数好像 在text1里输入y=x+1x=text2y=x+1text3=y不知这样可不可以
2026年09月27日 12:26
有4个网友回答
网友(1):

这个实现用到一个控件.

在VB里点"工程"->"部件", 在"控件"选项卡里选取"Microsoft Script Control 1.0", 然后确定. 在工具箱找到ScriptControl控件, 添加到窗体中, 再添加一个TextBox, 一个Command, 一个Label. 然后加入如下代码:

Private Sub Command1_Click()
Dim s As String
s = "function RunThis()" & vbCrLf & "RunThis=" & Text1.Text & vbCrLf & "end function"
ScriptControl1.AddCode s
Label1.Caption = ScriptControl1.Run("RunThis")
End Sub

此后你可以在text1中输入任何表达式, 包括 now, time, date, 5+4-1, msgbox "Hello!", 执行结果都会在label1显示出来. 但是注意! 不能在表达式里调用控件!! 输入的表达式不能影响你的程序的变量. 你可以在里面写函数, 但是不能直接引用你程序的变量和控件.

网友(2):

实现用控件.

VB点"工程"->"部件", "控件"选项卡选取"Microsoft Script Control 1.0", 确定. 工具箱找ScriptControl控件, 添加窗体, 再添加TextBox, Command, Label. 加入代码:

Private Sub Command1_Click()
Dim s As String
s = "function RunThis()" & vbCrLf & "RunThis=" & Text1.Text & vbCrLf & "end function"
ScriptControl1.AddCode s
Label1.Caption = ScriptControl1.Run("RunThis")
End Sub

text1输入任何表达式, 包括 now, time, date, 5+4-1, msgbox "Hello!", 执行结都label1显示. 注意! 能表达式调用控件!! 输入表达式能影响程序变量. 面写函数, 能直接引用程序变量控件.

网友(3):

eval有这个函数吧。。

网友(4):

不能直接 除非你的程序能够解析一下你输入的 东西 但是这个几乎不可能 否则你可以编写一个VB编写的VB了!~:)