我对象生日计算器
【用JAVA编写一个计算器】
import?java.awt.BorderLayout;
import?java.awt.Color;
import?java.awt.GridLayout;
import?java.awt.event.ActionEvent;
import?java.awt.event.ActionListener;
import?javax.swing.ImageIcon;
import?javax.swing.JButton;
import?javax.swing.JFrame;
import?javax.swing.JPanel;
import?javax.swing.JTextField;
import?javax.swing.SwingConstants;
public?class?Jisuanqi?extends?JFrame?implements?ActionListener?{
/**
?*?
?*/
private?static?final?long?serialVersionUID?=?1L;
Result?result?=?new?Result();?//?定义text的面板
Number_Key?number_key?=?new?Number_Key();?//?定义按钮面板
//?当点击按钮+、-、*、/时,com?=?true
boolean?com?=?false;
//?当i=0时说明是我们第一次输入,字符串text不会累加
int?i?=?0;
//?存放text的内容
String?text?=?"";
//?存放点击按钮+、-、*、/之前的数值
double?defbutton?=?0;
//?+、-、*、/的代号分别为1,2,3,4
int?symbol?=?0;
//?构造函数
Jisuanqi()?{
super("WangJiao");?//?设定标题
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);?//?设定关闭窗体时退出程序
JPanel?pane?=?new?JPanel();?//?定义主面板
pane.setLayout(new?BorderLayout());
setBounds(380,?220,?30,?80);?//?前两个参数是在屏幕上显示的坐标,后两个是大小
//?替换图标
ImageIcon?icon?=?new?ImageIcon("F:1.GIF");
//?Jisuanqi.class.getResource("APPLE.GIF")
//?);
setIconImage(icon.getImage());
pane.add(result,?BorderLayout.NORTH);
pane.add(number_key,?BorderLayout.CENTER);
pane.add(number_key.equal,?BorderLayout.SOUTH);
number_key.one.addActionListener(this);?//?对1按钮添加监听事件
number_key.two.addActionListener(this);?//?对2按钮添加监听事件
number_key.three.addActionListener(this);?//?对3按钮添加监听事件
number_key.four.addActionListener(this);?//?对4按钮添加监听事件
number_key.five.addActionListener(this);?//?对5按钮添加监听事件
number_key.six.addActionListener(this);?//?对6按钮添加监听事件
number_key.seven.addActionListener(this);?//?对7按钮添加监听事件
number_key.eight.addActionListener(this);?//?对8按钮添加监听事件
number_key.nine.addActionListener(this);?//?对9按钮添加监听事件
number_key.zero.addActionListener(this);?//?对0按钮添加监听事件
number_key.ce.addActionListener(this);?//?对置零按钮添加监听事件
number_key.plus.addActionListener(this);?//?对+按钮添加监听事件
number_key.equal.addActionListener(this);?//?对=按钮添加监听事件
number_key.sub.addActionListener(this);?//?对-按钮添加监听事件
number_key.mul.addActionListener(this);?//?对*按钮添加监听事件
number_key.div.addActionListener(this);?//?对/按钮添加监听事件
number_key.point.addActionListener(this);?//?对.按钮添加监听事件
setContentPane(pane);
pack();?//?初始化窗体大小为正好盛放所有按钮
}
//?各个按钮触发的事件
public?void?actionPerformed(ActionEvent?e)?{
/*
?*?如果是点击数字按钮那么先要判断是否在此之前点击了+、-、*、/、=,如果是那么com=true?如果没有com=
?*?false;或者是否点击数字键,如果是i?=?1,如果没有?i?=?0;
?*/
if?(e.getSource()?==?number_key.one)?{
if?(com?||?i?==?0)?{
result.text.setText("1");
com?=?false;
i?=?1;
}?else?{
text?=?result.text.getText();
result.text.setText(text?+?"1");
}
}?else?if?(e.getSource()?==?number_key.two)?{
if?(com?||?i?==?0)?{
result.text.setText("2");
com?=?false;
i?=?1;
}?else?{
text?=?result.text.getText();
result.text.setText(text?+?"2");
}
}?else?if?(e.getSource()?==?number_key.three)?{
if?(com?||?i?==?0)?{
result.text.setText("3");
com?=?false;
i?=?1;
}?else?{
text?=?result.text.getText();
result.text.setText(text?+?"3");
}
}?else?if?(e.getSource()?==?number_key.four)?{
if?(com?||?i?==?0)?{
result.text.setText("4");
com?=?false;
i?=?1;
}?else?{
text?=?result.text.getText();
result.text.setText(text?+?"4");
}
}?else?if?(e.getSource()?==?number_key.five)?{
if?(com?||?i?==?0)?{
result.text.setText("5");
com?=?false;
i?=?1;
}?else?{
text?=?result.text.getText();
result.text.setText(text?+?"5");
}
}?else?if?(e.getSource()?==?number_key.six)?{
if?(com?||?i?==?0)?{
result.text.setText("6");
com?=?false;
i?=?1;
}?else?{
text?=?result.text.getText();
result.text.setText(text?+?"6");
}
}?else?if?(e.getSource()?==?number_key.seven)?{
if?(com?||?i?==?0)?{
result.text.setText("7");
com?=?false;
i?=?1;
}?else?{
text?=?result.text.getText();
result.text.setText(text?+?"7");
}
}?else?if?(e.getSource()?==?number_key.eight)?{
if?(com?||?i?==?0)?{
result.text.setText("8");
com?=?false;
i?=?1;
}?else?{
text?=?result.text.getText();
result.text.setText(text?+?"8");
}
}?else?if?(e.getSource()?==?number_key.nine)?{
if?(com?||?i?==?0)?{
result.text.setText("9");
com?=?false;
i?=?1;
}?else?{
text?=?result.text.getText();
result.text.setText(text?+?"9");
}
}
/*
?*?对于0这个按钮有一定的说法,在我的程序里不会出现如00000这样的情况,我加了判断条件就是
?*?如果text中的数值=0就要判断在这个数值中是否有.存在?如果有那么就在原来数值基础之上添?加0;否则保持原来的数值不变
?*/
else?if?(e.getSource()?==?number_key.zero)?{?//?result.text.getText()是得到text里内容的意思
if?(com?||?i?==?0)?{
result.text.setText("0");
com?=?false;
i?=?1;
}?else?{
text?=?result.text.getText();
if?(Float.parseFloat(text)?>?0?||?Float.parseFloat(text)?<?0)?{?//?Float.parseFloat(text)就是类型转换了,下面都是一样
result.text.setText(text?+?"0");
}?else?{
if?(text.trim().indexOf(".")?==?-1)?{
result.text.setText(text);
}?else?{
result.text.setText(text?+?"0");
}
}
}
}?else?if?(e.getSource()?==?number_key.ce)?{
result.text.setText("0");
i?=?0;
com?=?true;
//?text?=?"";
defbutton?=?0;
}
/*
?*?本程序不会让一个数值中出现2个以上的小数点.具体做法是:判断是否已经存在.存在就不添加,?不存在就添加.
?*/
else?if?(e.getSource()?==?number_key.point)?{
if?(com?||?i?==?0)?{
result.text.setText("0.");
com?=?false;
i?=?1;
}?else?{
text?=?result.text.getText();
if?(text.trim().indexOf(".")?==?-1)?{
result.text.setText(text?+?".");
}?else?{
result.text.setText(text);
}
}
}?//?获得点击+之前的数值
else?if?(e.getSource()?==?number_key.plus)?{
com?=?true;
i?=?0;
defbutton?=?Double.parseDouble(result.text.getText());
symbol?=?1;
}?//?获得点击-之前的数值
else?if?(e.getSource()?==?number_key.sub)?{
com?=?true;
i?=?0;
defbutton?=?Double.parseDouble(result.text.getText());
symbol?=?2;
}?//?获得点击*之前的数值
else?if?(e.getSource()?==?number_key.mul)?{
com?=?true;
i?=?0;
defbutton?=?Double.parseDouble(result.text.getText());
System.out.println(defbutton);
symbol?=?3;
}?//?获得点击/之前的数值
else?if?(e.getSource()?==?number_key.div)?{
com?=?true;
i?=?0;
defbutton?=?Double.parseDouble(result.text.getText());
symbol?=?4;
}?else?if?(e.getSource()?==?number_key.equal)?{
switch?(symbol)?{
case?1:?{?//?计算加法
double?ad?=?defbutton
+?Double.parseDouble(result.text.getText());
result.text.setText(ad?+?"");
i?=?0;
text?=?"";
break;
}
case?2:?{?//?计算减法
double?ad?=?defbutton
-?Double.parseDouble(result.text.getText());
result.text.setText(String.valueOf(ad));
i?=?0;
text?=?"";
break;
}
case?3:?{?//?计算乘法
double?ad?=?defbutton
*?Double.parseDouble(result.text.getText());
result.text.setText(ad?+?"");
i?=?0;
text?=?"";
break;
}
case?4:?{?//?计算除法
double?ad?=?defbutton
/?Double.parseDouble(result.text.getText());
result.text.setText(ad?+?"");
i?=?0;
text?=?"";
break;
}
}
System.out.println(com);
}
System.out.println(result.text.getText());
}
@SuppressWarnings("deprecation")
public?static?void?main(String[]?args)?{
Jisuanqi?loveyou?=?new?Jisuanqi();
loveyou.show();
}
}
//?计算器数字按钮定义面板
class?Number_Key?extends?JPanel?{
/**
?*?
?*/
private?static?final?long?serialVersionUID?=?1L;
JButton?zero?=?new?JButton("0");?//?数字键0
JButton?one?=?new?JButton("1");?//?数字键1
JButton?two?=?new?JButton("2");?//?数字键2
JButton?three?=?new?JButton("3");?//?数字键3
JButton?four?=?new?JButton("4");?//?数字键4
JButton?five?=?new?JButton("5");?//?数字键5
JButton?six?=?new?JButton("6");?//?数字键6
JButton?seven?=?new?JButton("7");?//?数字键7
JButton?eight?=?new?JButton("8");?//?数字键8
JButton?nine?=?new?JButton("9");?//?数字键9
JButton?plus?=?new?JButton("+");
JButton?sub?=?new?JButton("-");
JButton?mul?=?new?JButton("*");
JButton?div?=?new?JButton("/");
JButton?equal?=?new?JButton("=");
JButton?ce?=?new?JButton("清零");?//?置零键
JButton?point?=?new?JButton(".");
Number_Key()?{
setLayout(new?GridLayout(4,?4,?1,?1));?//?定义布局管理器为网格布局
setBackground(Color.blue);?//?设置背景颜色
//?添加按钮
add(one);
add(two);
add(three);
add(four);
add(five);
add(six);
add(seven);
add(eight);
add(nine);
add(zero);
add(plus);
add(sub);
add(mul);
add(div);
add(point);
add(equal);
add(ce);
}
}
//?计算器显示结果的窗体
class?Result?extends?JPanel?{
/**
?*?
?*/
private?static?final?long?serialVersionUID?=?1L;
//?text先是输入和结果
JTextField?text?=?new?JTextField("0");
@SuppressWarnings("deprecation")
Result()?{?//?讲输入的数字或得到的结果在text的右边显示
text.setHorizontalAlignment(SwingConstants.RIGHT);
text.enable(false);?//?文本框不能编辑
setLayout(new?BorderLayout());?//?设定布局管理器边框布局
add(text,?BorderLayout.CENTER);?//?text放置在窗体的中间
}
}
直接复制?保存成Jisuanqi?.java可以直接运行了
【求VB简易计算器的代码?】
代码是:码
跪求高人给代码!!!
我有更好回答
?
匿名用户
推荐于2016-11-11
PrivateSubCommand1_Click()
SelectCaseText2.Text
Case"+"
Text4.Text=Str(Val(Text1.Text)+Val(Text3.Text))
Case"-"
Text4.Text=Str(Val(Text1.Text)-Val(Text3.Text))
Case"*"
Text4.Text=Str(Val(Text1.Text)*Val(Text3.Text))
VisualBasic(简称VB)是Microsoft公司开发的一种通用的基于对象的程序设计语言,为结构化的、模块化的、面向对象的、包含协助开发环境的事件驱动为机制的可视化程序设计语言。是一种可用于微软自家产品开发的语言。
“Visual”指的是开发图形用户界面(GUI)的方法——不需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象add到屏幕上的一点即可。?
“Basic”指的是BASIC(BeginnersAll-PurposeSymbolicInstructionCode)语言,是一种在计算技术发展历史上应用得最为广泛的语言。
VisualBasic源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件,用于高效生成类型安全和面向对象的应用程序。
程序员可以轻松的使用VB提供的组件快速建立一个应用程序。
我对象生日计算器相关文章: