1.创建
打开visual stdio
选择Windows窗体应用
命名项目名称,选择保存的地址,点击下一步
点击创建完成创建
2.数字功能的实现
在工具箱中找到button按钮,拖动进窗体中即可,我们要完成数字0-9的创建所以要拖动十个按钮,选中刚才拖动进来的button1 CTRL C CTRL VVVV…就可以了
然后在工具箱的搜索栏中搜索TextBox拖动进去。这是我们输入数字的地方
点击button1按钮找到它的属性把他的text文本改为1
右键button1就可以找到属性
以此类推修改数字0-9
然后双击button1
进编程
textBox1.Text += "1";
这就是点击按钮所获得文本信息在文本框显示。但是我们想要他在闻本框中显示。
但是是在文本框的左侧显示,我们想要他在文本框的右侧显示。点击文本框,选择属性找到TextAlign这是文本的对齐方式,选择右对齐即可
这里的数字按钮就做完了,下面做算术运算符号
3.算术运算符号
如数字创建一样先创建button按钮。
在这选项中上面的可以调整字体以及字体大小,下面的可以调整字体颜色
做运算需要保存数字,我们需要在button按钮外面定义double 类型的左右操作数left和right以及计算结果result,以及一个string类型的flag来保存运算符号。
这里以加法为例。其他的运算与加法类似。
我们把文本框里的数字强制类型转换为double,这里用Convert.ToDouble()函数。
将flag记录为加号;
在设置等号按钮
第一条语句是将第二次输入的记录下来,转换为double。
第二句子将文本框置为空。
if语句判断符号输出结果。
将结果强制类型转换为string。
制作删除按钮运用函数substring删除最后一位输入的符号
但是在制作时发现如果使用了加号后直接点击等号会报错
所以修改使用符号后出现0再按别的数字将0清除。
将flag初始化为“1”,如果flag!=”1“ 的话就说明已经有了运算符号了,就清楚字符框的0就可了。
但是这样好像就只能输入一个数字了,在加一个flag1.表示符号有无
在符号运算处将flag1 置为”1“;就解决这个问题了,但是这要在每个0-9每个按钮中都添加,写一个函数比较好(我的复制完之后我才想到…)。
4.小数点
设置一个flagpoint设置为0;如果flagpoint=0就说明可以使用小数点,flagpoint=1就说明不可使用小数点。然后每次使用了符号就将flagpoint再次置为0;
但是刚开始时文本框为空使用小数点为“ .”不太合适
我们在这里判断textbox1是否为空,空的话就添加“ 0. ”
但是在测试时发现,1+.6(这里已经直接显示了0)的话会把小数点清楚;
这是选择完运算符号的删除0造成的,在数字按钮中添加判断。如果输入了“0.”就将flag1置为“0”。
5.代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace calclulator
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
Double left, right, result;
String flag1 = "0", flag;
<