zoukankan      html  css  js  c++  java
  • 计算器(Windows程序设计)

    前言

      虽然享受着博客的方便管理(感觉博客有点丑)= v =,但是还是想自己弄个服务器来记录生活和学习,自主性高一点,主要能放一些自己的写的项目运行,把自己的东西汇汇总,以后给别人看方便一点,服务器上也别省钱了,能白嫖的白嫖,能py的py,实在不行再买吧。(`・ω・´)

    问题描述

    设计一个功能完整、界面美观的计算器应用程序。要求:

    • (1) 用户可通过鼠标点击按钮输入运算数,在文本框中显示,实现加、减、乘、除等四则运算及倒数、取反功能。要求实现良好的布局效果,通过对按钮功能分类简化编程。
    • (2) 除了鼠标输入外,可同时实现键盘输入和运算(即通过键盘输入数字及运算符时,达到与按钮点击一样的效果)。
    • (3) 实现小数运算和连续运算;
    • (4) 实现sqrt,sin等科学计算功能;
    • (5) 实现表达式解析等附加功能

    解决思路

    按钮很多,通过不同的事件进行区分

      比如四则运算事件为DoudleClicked,而sqrt,x^2,1/x,sinx为SingleClicked,将不同的按钮分到同一个事件当中,代码的复用性高,逻辑清楚。

    使用MSScriptControl来解决表达解释式

     SScriptControl.ScriptControl sc = new MSScriptControl.ScriptControl();
     sc.Language = "JavaScript";
     textBox1.Text= sc.Eval(textBox2.Text.ToString()).ToString();
    

      其中 textBox1.Text为结果,textBox2.Text是一个字符串,比如 1+3*5-4/2 它能帮直接进行所需要的乘处优先,再算加减,所以这边我的代码是有问题的,在处理四则运算的时候,如果处理SingleClicked事件时就会起冲突。如果各位有兴趣的话还可以自己继续去研究效果图如下:

            = =

    源码附上 项目传送门

  • 相关阅读:
    python 文件和路径操作函数小结
    python文件处理
    jquery操作select
    ubuntu 安装ODOO时的python的依赖
    XML-RPC 实现C++和C#交互
    C#接收xmlrpc接口返回哈希表格式
    XmlRpc with C#/Java【转】
    OpenERP 的XML-RPC的轻度体验+many2many,one2many,many2one创建方式
    在Ubuntu Server上源码安装OpenERP 8.0,并配置wsgi和nginx运行环境
    C# 文件与二进制互转数据库写入读出
  • 原文地址:https://www.cnblogs.com/xxhao/p/12513369.html
Copyright © 2011-2022 走看看