如何在文本框上获得计算器金额

本文关键字:计算器 金额 文本 | 更新日期: 2023-09-27 18:06:23

我有一个应用程序,我想在一个按钮上打开一个计算器单击,一旦操作在计算器上执行,计算器被关闭,我希望该值回到我的文本框。如何实现这个功能?

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

我使用c# 4.0,它是一个基于窗口的应用程序。

Regards and Thanks

如何在文本框上获得计算器金额

你可以使用微软脚本控件在你的c#应用程序中实现计算器功能。该控件有一个简单的Eval()方法来计算表达式,范围可以从简单的"2+2"到VBScript命令。更多信息在这里:

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

在应用程序中实现计算器确实更简单:读取另一个进程窗口的内容不是微不足道的!当计算器"即将关闭"时,要得到通知就更难了。

它涉及,当然,寡妇API (FindMessage/SendMessage)(参见例如https://stackoverflow.com/a/360247/863564),可能p/Invoke,甚至可能挂钩calc.exe (spy++使用的技术-你需要它来捕获WM_CLOSE消息-看看这里发生了什么当你关闭一个窗口)

(您需要捕获WM_CLOSE,因为它是从窗口上的控件获取结果的最新合理时刻)

所以,另一种选择:一个很好的选择是脚本,但它可能太多了!快速搜索显示
一些
伟大的
项目

不管怎样,玩得开心!

您可以使用现有的库,例如http://nclac.codeplex.com在您的应用程序中提供计算。