1.C#WinForm基础制作简单计算器
利用c#语言编写简单计算器:
核心知识点:
MessageBox.Show(Convert.ToString(comboBox1.SelectedIndex));//下拉序号
MessageBox.Show(Convert.ToString(comboBox1.SelectedItem));//下拉内容
MessageBox.Show(Convert.ToString(comboBox1.SelectedText));//数据库会用到
MessageBox.Show(Convert.ToString(comboBox1.SelectedValue));//数据库会用到
源码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms; namespace 简单计算器
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)//加法
{
string str1 = textBox1.Text;//str1保存第一个文本框输入的内容
string str2 = textBox2.Text;//str2保存第二个文本框输入的内容
int i1, i2;
if (!int.TryParse(str1, out i1))//等价于 if (!int.TryParse(str1, out i1)==false),将第一个文本框内容字符串转换成整型数据
{
MessageBox.Show("第一个数不是合法的整数");//弹出消息对话框
return;//不要忘了return,仅仅退出所在的函数
}
if (int.TryParse(str2, out i2) == false)//将第二个文本框内容字符串转换成整型数据
{
MessageBox.Show("第二个数字不是合法的整数");//弹出消息对话框
return;
}
int i3 = i1 + i2;//进行运算
textBox3.Text = Convert.ToString(i3);// 等价于textBox3 = i3.ToString(); } private void button2_Click(object sender, EventArgs e)//单击隐藏文本框
{
textBox1.Hide();//第一个文本框隐藏
textBox2.Hide();//第二个文本框隐藏
textBox3.Hide();//第三个文本框隐藏
textBox4.Hide();
textBox5.Hide();
textBox6.Hide();
textBox7.Hide();
textBox8.Hide();
textBox9.Hide();
textBox10.Hide();
textBox11.Hide();
textBox12.Hide();
} private void button3_Click(object sender, EventArgs e)//单击显示文本框
{
textBox1.Show();//第一个文本框显示
textBox2.Show();//第二个文本框显示
textBox3.Show();//第三个文本框显示
textBox4.Show();
textBox5.Show();
textBox6.Show();
textBox7.Show();
textBox8.Show();
textBox9.Show();
textBox10.Show();
textBox11.Show();
textBox12.Show(); } private void button4_Click(object sender, EventArgs e)//减法
{
string str3 = textBox4.Text;
string str4 = textBox5.Text;
int i3, i4;
if (!int.TryParse(str3,out i3))
{
MessageBox.Show("第一个数不是合法的整数");
return;
}
if (!int.TryParse(str4,out i4))
{
MessageBox.Show("第二个数不是合法的数据");
}
int i5 = i3 -i4;
textBox6.Text = Convert.ToString(i5);
} private void button5_Click(object sender, EventArgs e)//乘法
{
string str3 = textBox7.Text;
string str4 = textBox8.Text;
int i3, i4;
if (!int.TryParse(str3, out i3))
{
MessageBox.Show("第一个数不是合法的整数");
return;
}
if (!int.TryParse(str4, out i4))
{
MessageBox.Show("第二个数不是合法的数据");
}
int i5 = i3 *i4;
textBox9.Text = Convert.ToString(i5); } private void button6_Click(object sender, EventArgs e)//除法
{
string str3 = textBox10.Text;
string str4 = textBox11.Text;
int i3, i4;
if (!int.TryParse(str3, out i3))
{
MessageBox.Show("第一个数不是合法的整数");
return;
}
if (!int.TryParse(str4, out i4))
{
MessageBox.Show("第二个数不是合法的数据");
}
int i5 = i3 / i4;
textBox12.Text = Convert.ToString(i5);
} }
}
程序截图:

计算器版本2.0
源码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms; namespace 计算器2._0
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
/********************************
MessageBox.Show(Convert.ToString(comboBox1.SelectedIndex));//下拉序号
MessageBox.Show(Convert.ToString(comboBox1.SelectedItem));//下拉内容
MessageBox.Show(Convert.ToString(comboBox1.SelectedText));//数据库会用到
MessageBox.Show(Convert.ToString(comboBox1.SelectedValue));//数据库会用到
**********************************/
string s1 = textBox1.Text;
string s2 = textBox2.Text;
int i1, i2;
i1 = Convert.ToInt32(s1);
i2 = Convert.ToInt32(s2);
int result;
switch (comboBox1.SelectedIndex) //多选框的序号
{
case :
result = i1 + i2;
break;
case :
result = i1 - i2;
break;
case :
result = i1 * i2;
break;
case :
if (i2 == ) //检查除数是否为零
{
MessageBox.Show("除数不能为零!!!");
return;
}
result = i1 / i2;
break;
default://防患于未然
throw new Exception("未知的运算符");
}
textBox3.Text = Convert.ToString(result);
}
}
}
运行截图:





1.C#WinForm基础制作简单计算器的更多相关文章
- winform制作简单计算器
public Form1() { InitializeComponent(); textBox2.Text = ";//主显示屏 textBox1.Text = "";/ ...
- 《自制编程语言》笔记:使用yacc与lex制作简单计算器
1.代码 1.1)test.l 1.2)test.y 1.3)Makefile (因为是在linux环境下,所以使用了Makefile) 2.编译与运行 2.1)编译 2.2)运行 1.代码(也可以在 ...
- 用JavaScript制作简单的计算器
<html > <head> <title>简单计算器</title> <style type="text/css"> ...
- Photoshop 基础三 制作简单按钮
要求知识点:移动工具.选择工具.套索工具.多边行工具.文本工具.路径选择工具.裁剪.填充 一.制作简单按钮 1)新建画布,大小随便 2)画圆角矩形工具(同时定义背景色.边框是否需求.边框颜色) 3)打 ...
- 基于MFC的一个简单计算器
写一个简单的计算器并不是什么很难的事,主要目的是要通过这个程序来学习和分析其中的核心算法.这个简易计算器的核心部分就是对输入的表达式的正确性判断与求值,其中包括对表达式的解析.中缀表达式转后缀表达式. ...
- 新课程开始的第二天,HTML基础制作
天正式开始学习HTML的基础制作,有简单的指令开始入手. 第一天的学习,因为基础,所以觉得还算简单,主要是对网页背景.图片.文字.表格等的编辑,和一部分链接的使用. 由下面的的一个事例,通过所学的简单 ...
- ZAM 3D 制作简单的3D字幕 流程(二)
原地址:http://www.cnblogs.com/yk250/p/5663907.html 文中表述仅为本人理解,若有偏差和错误请指正! 接着 ZAM 3D 制作简单的3D字幕 流程(一) .本篇 ...
- 【2017-04-24】winform基础、登录窗口、窗口属性
一.winform基础 客户端应用程序:C/S 客户端应用程序可以操作用户电脑中的文件,代码要在用户电脑上执行,吃用户电脑配置. 窗体是由控件和属性做出来的 控件:窗体里所放的东西."视图 ...
- 【转】WinForm基础
winform基础 先修基础:C#语法基础和面向对象编程 1.Winform创建解决方案 2.Winform窗体 3.MessageBOx 4.Winform登录.控制软件只运行一次.回车登录 5.W ...
随机推荐
- socket读写返回值的处理
在调用socket读写函数read(),write()时,都会有返回值.如果没有正确处理返回值,就可能引入一些问题 总结了以下几点 1当read()或者write()函数返回值大于0时,表示实际从缓冲 ...
- 通过AngularJS实现前端与后台的数据对接(一)——预备工作篇
最近,笔者在做一个项目:使用AngularJS,从而实现前端与后台的数据对接.笔者这是第一次做前端与后台的数据对接的工作,因此遇到了许多问题.笔者在这些问题中,总结了一些如何实现前端与后台的数据对接的 ...
- ASP.NET MVC5----常见的数据注解和验证
只要一直走,慢点又何妨. 在使用MVC模式进行开发时,数据注解是经常使用的(模型之上操作),下面是我看书整理的一些常见的用法. 什么是验证,数据注解 验证 从全局来看,发现逻辑仅是整个验证的很小的一部 ...
- java中的内部类
/** * 内部类 ?? * 定义在一个内部的类,被称为内部类. * 内部类里有类体,方法体 * 内部类所在的类,被称为外部类. * --------------------------------- ...
- 解决mysql插入数据时出现Incorrect string value: '\xF0\x9F...' for column 'name' at row 1的异常
这个问题,原因是UTF-8编码有可能是两个.三个.四个字节.Emoji表情或者某些特殊字符是4个字节,而MySQL的utf8编码最多3个字节,所以数据插不进去. 我的解决方案是这样的 1.在mysql ...
- 在centos7(EL7.3 即 kernel-3.10.0-514.X )上安装BCM4312无线网卡驱动要注意的问题
我新装的centos7主机无法使用里面自带的网卡,查询后发现网卡型号为BCM4312.我在看资料安装的过程中遇到了些问题,纠结了好久,现在分享下要注意的点,为后来的遇到同样问题的人提供点帮助.现在开始 ...
- 项目游戏开发日记 No.0x000001
14软二杨近星(2014551622) 既然已经决定了开发软件, 时不时就要练练手, 还要时不时的去寻找素材, 因为开发的人物设定就是DotA2里面的祈求者, 所以, 就去找了他的相关人物图片和模型, ...
- 《徐徐道来话Java》:PriorityQueue和最小堆
在讲解PriorityQueue之前,需要先熟悉一个有序数据结构:最小堆. 最小堆是一种经过排序的完全二叉树,其中任一非终端节点数值均不大于其左孩子和右孩子节点的值. 可以得出结论,如果一棵二叉树满足 ...
- 【腾讯Bugly干货分享】微信热补丁Tinker的实践演进之路
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57ad7a70eaed47bb2699e68e Dev Club 是一个交流移动 ...
- 猫哥网络编程系列:详解 BAT 面试题
从产品上线前的接口开发和调试,到上线后的 bug 定位.性能优化,网络编程知识贯穿着一个互联网产品的整个生命周期.不论你是前后端的开发岗位,还是 SQA.运维等其他技术岗位,掌握网络编程知识均是岗位的 ...