各位好:
在用VB做一个小软件,其中像实现一个这样的功能:
就是在软件运行时,用户可以利用一个文本框输入一个一定格式的函数(如 Y = fun(x)),让软件在处理有些数据时,如由a值算b值时,采用用户输入的算法。
现在还没思路的,网上查了下,这方面介绍较少,还请论坛大虾们解惑哈。谢谢。
在用VB做一个小软件,其中像实现一个这样的功能:
就是在软件运行时,用户可以利用一个文本框输入一个一定格式的函数(如 Y = fun(x)),让软件在处理有些数据时,如由a值算b值时,采用用户输入的算法。
现在还没思路的,网上查了下,这方面介绍较少,还请论坛大虾们解惑哈。谢谢。
Dim strText As String
Dim y%, x%, a%
x = 8
a = 11
strText = "Y = x*x+a"
'将用户输入的表达式都替换掉
strText = Replace(strText, "x", x)
strText = Replace(strText, "a", a)
y = WZcalc(Split(strText, "=")(1)) '实际传递给WZcalc的就是“8*8+11”
MsgBox y
End SubPublic Function WZcalc(ByVal Tmpstr$) As Double
Dim sc
Set sc = CreateObject("ScriptControl")
sc.Language = "VBScript"
WZcalc = sc.Eval(Tmpstr)
Set sc = Nothing
End Function
Set sc = CreateObject("ScriptControl")
sc.Language = "VBScript" ---这里有点不懂,网上查了下,好像是Visual Basic 脚本语 言啥的
WZcalc = sc.Eval(Tmpstr) ---Eval这里也不是懂
Set sc = Nothing
这里是不是设计到 类、Microsoft(R) Script Control控件 啥的了啊
我感觉自己不是很明了
请问应该从哪方面着手,才能较为深入的理解啊
谢谢
http://download.csdn.net/source/3082425
sc.Language = "VBScript" ‘设置脚本语言为VBS
WZcalc = sc.Eval(Tmpstr) ‘执行tmpstr的代码
Set sc = Nothing ’释放sc对象