如下图:http://www.ttx.com.cn/bbs/v0qdu_2004-7/2005-7/2005730185045733.jpg
最难解决的是:1.如何检查公式 是否 正确 ???2.如何 计算 公式 的结果 
请问有谁做过这种功能???  可以出详细的代码吗???

解决方案 »

  1.   

    1.使用第三方脚本解析器,如VBSctipt,JavaScript等
    ------------------------------
    转贴——MsScript.ocx的使用with ScriptControl1 do
      begin
        Language :='VBScript'; ///设置语言,还可以为JavaScript
        SitehWnd :=Handle;   ///传递父窗口句柄
        ExecuteStatement('msgbox("Shit!")');  /// 显示一个Message Box
        ShowMessage('1+2+3*4/5^7='+FloatToStr(Eval('1+2+3*4/5^7')));
      end;procedure TForm1.Button1Click(Sender: TObject);
    var xx: OLEVariant;
    begin
    xx := CreateOLEObject('MSScriptControl.ScriptControl');
    xx.Language := 'VBScript';
    xx.AddCode('Dim i');
    xx.AddCode('i=2');
    xx.ExecuteStatement('MsgBox i^2');
    end;-----------------------------
    2.使用脚本解析控件,如: ExpressForum Library 
     
    3.自己写脚本解析器
      

  2.   

    请问 ExpressForum Library  在哪里下载??
      

  3.   

    http://www.devexpress.com/Downloads/VCL/ExForumLibrary/
      

  4.   

    有delphi 6的吗 ? 是免费的吗
      

  5.   

    可以交给数据库试算。如:select 888*999