如何在文本框中获取计算器数量

时间:2013-03-29 10:59:55

标签: c# calculator

我有一个应用程序,我想在按钮点击时打开一个计算器,一旦在计算器上执行操作并且计算器关闭,我想将该值返回到我的文本框。 如何实现此功能。

  private void btnDollarTransferHelp_Click(object sender, EventArgs e)
    {
        System.Diagnostics.Process myProcess = System.Diagnostics.Process.Start("calc.exe");
    }

我正在使用C#4.0及其基于窗口的应用程序。

问候并致谢

3 个答案:

答案 0 :(得分:0)

您可以使用Microsoft脚本控件在C#应用中实现计算器功能。该控件有一个简单的Eval()方法来计算表达式,范围从简单的“2 + 2”到VBScript命令。更多信息:

http://msdn.microsoft.com/en-us/library/aa227637(v=vs.60).aspx

答案 1 :(得分:0)

在您的应用中实施计算器确实更简单:阅读另一个处理窗口的内容并非易事!当计算器即将关闭时会收到通知。更难。

肯定涉及widows API(FindMessage / SendMessage)(参见例如https://stackoverflow.com/a/360247/863564),可能P/Invoke,甚至可能hooking calc.exe(Spy ++使用的技术 - 你需要它来捕获WM_CLOSE消息 - 请参阅此处closing a window

时会发生什么

(你需要捕获WM_CLOSE,因为这是从窗口控件中获取结果的最新明智时刻)

所以,替代方案:一个伟大的是scriptcs,但它可能太多了!快速搜索显示了 some
great
projects

无论哪种方式,都玩得开心!

答案 2 :(得分:0)

您可以使用现有的资源库,例如http://nclac.codeplex.com在您的申请中提供计算。