怎样将TEdit控件中的字符串转化为表达式进行计算。解决方法

怎样将TEdit控件中的字符串转化为表达式进行计算。
各位高手请教了:      
    请问,在一个TEdit中输入一个表达式。如(100-20)*(300-90)*3+5-2这样一个表达式。然后单击一个TButton按钮。便能计算出该表达式的值。请各位高手帮助!

------解决方案--------------------
如果是一些简单的算术运算, 可以这样的:

uses ComObj;

function MathStr(const Str : string) : string;
var
vScriptControl : OLEVariant;
begin
try
vScriptControl := CreateOleObject( 'MSScriptControl.ScriptControl ');
vScriptControl.Language := 'VBScript ';
result := vScriptControl.Eval(Str);
except
result := ' ';
end;
end;

procedure TForm1.Button1Click(Sender: TObject); //测试
begin
Edit1.Text := '(3*6+2)/4 ';
ShowMessage(MathStr(Edit1.Text));
end;