public class demo1_main {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
MyWindows my=new MyWindows();
Balac bal=new Balac();
}
}
阶乘窗口类:
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
public class MyWindows extends Frame implements ActionListener{
TextField text1,text2;
int sum = 1;
Button bt01;//声明三个文本框
MyWindows()//构造函数
{
text1=new TextField(10);
text2=new TextField(10);
bt01=new Button("!n=");
text1.setBounds(120, 120, 20, 80);
text1.setBounds(120, 120, 20, 80);
setLayout(new FlowLayout());
add(text1);
add(bt01);
add(text2);
text1.addActionListener(this);
bt01.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
String num=text1.getText();
int number=Integer.parseInt(num);
for(int i=1;i<=number;i++)
{
sum=sum*i;
}
text2.setText(sum+"");
sum=1;
}
});
setBounds(100,100,300,300);
this.addWindowListener(new WindowAdapter()//退出
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
setVisible(true);
validate();
};
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
String num=arg0.getActionCommand();
int number=Integer.parseInt(num);
for(int i=1;i<=number;i++)
{
sum=sum*i;
}
text2.setText(sum+"");
sum=1;
}
}
计算器类:
public class Bub {
private double point_beyond=0.0,point_behind=0.0,number=0.0;
private char cha;
private int flag=0;
public void set_number(double number)
{
this.number=number;
}
public void set_beyond(double a)
{
this.point_beyond=a;
}
public void set_behind(double a)
{
this.point_behind=a;
}
public void set_cha(char a)
{
this.cha=a;
}
public void set_flag(int f)
{
this.flag=f;
}
public double getnum()
{
return this.number;
}
public int get_flag()
{
return this.flag;
}
public double get_beyond()
{
return this.point_beyond;
}
public double get_behind()
{
return this.point_behind;
}
public char get_char()
{
return this.cha;
}
}
计算器窗口类:
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
public class Balac extends JFrame implements ActionListener {
TextField text1,text2,text3,text4;
double sum=0.0d;
double point_flag=0.1;
Bub bub1=new Bub();
Bub bub2=new Bub();
Button bt00,bt01,bt02,bt03,bt04,bt05,bt06,bt07,bt08,bt09,bt10,bt11,bt12,bt13,bt14,bt15,bt16;
Balac()
{
text1=new TextField(20);
text2=new TextField(20);
text3=new TextField(20);
text4=new TextField(20);
bt00=new Button("0");
bt01=new Button("1");
bt02=new Button ("2");
bt03=new Button ("3");
bt04=new Button ("4");
bt05=new Button ("5");
bt06=new Button ("6");
bt07=new Button ("7");
bt08=new Button ("8");
bt09=new Button ("9");
bt10=new Button (".");
bt11=new Button ("+");
bt12=new Button ("-");
bt13=new Button ("*");
bt14=new Button ("/");
bt15=new Button ("=");
bt16=new Button("清空");
setLayout(new FlowLayout());
add(text1);
add(text2);
add(text4);
add(text3);
add(bt00);
add(bt01);
add(bt02);
add(bt03);
add(bt04);
add(bt05);
add(bt06);
add(bt07);
add(bt08);
add(bt09);
add(bt10);
add(bt11);
add(bt12);
add(bt13);
add(bt14);
add(bt15);
add(bt16);
text1.addActionListener(this);
text2.addActionListener(this);
text3.addActionListener(this);
text4.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
text4.setText(bub1.get_char()+"");
}
});
this.setBounds(100, 100, 180, 230);
this.addWindowListener(new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e) {
// TODO Auto-generated method stub
System.exit(0);
super.windowClosing(e);
}
});
bt00.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(bub1.get_flag()==0)
{
bub1.set_beyond(bub1.get_beyond()*10+0);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
return ;
}
if(bub1.get_flag()==1)
{
bub1.set_behind(bub1.get_behind()+0*point_flag);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
if(bub1.get_flag()==2)
{
bub2.set_beyond(bub2.get_beyond()*10+0);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
return ;
}
if(bub1.get_flag()==3)
{
bub2.set_behind(bub2.get_behind()+0*point_flag);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
}
});
bt01.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(bub1.get_flag()==0)
{
bub1.set_beyond(bub1.get_beyond()*10+1);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
return ;
}
if(bub1.get_flag()==1)
{
bub1.set_behind(bub1.get_behind()+1*point_flag);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
if(bub1.get_flag()==2)
{
bub2.set_beyond(bub2.get_beyond()*10+1);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
return ;
}
if(bub1.get_flag()==3)
{
bub2.set_behind(bub2.get_behind()+1*point_flag);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
}
});
bt02.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(bub1.get_flag()==0)
{
bub1.set_beyond(bub1.get_beyond()*10+2);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
return ;
}
if(bub1.get_flag()==1)
{
bub1.set_behind(bub1.get_behind()+2*point_flag);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
if(bub1.get_flag()==2)
{
bub2.set_beyond(bub2.get_beyond()*10+2);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
return ;
}
if(bub1.get_flag()==3)
{
bub2.set_behind(bub2.get_behind()+2*point_flag);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
}
});
bt03.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(bub1.get_flag()==0)
{
bub1.set_beyond(bub1.get_beyond()*10+3);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
return ;
}
if(bub1.get_flag()==1)
{
bub1.set_behind(bub1.get_behind()+3*point_flag);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
if(bub1.get_flag()==2)
{
bub2.set_beyond(bub2.get_beyond()*10+3);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
return ;
}
if(bub1.get_flag()==3)
{
bub2.set_behind(bub2.get_behind()+3*point_flag);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
}
});
bt04.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(bub1.get_flag()==0)
{
bub1.set_beyond(bub1.get_beyond()*10+4);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
return ;
}
if(bub1.get_flag()==1)
{
bub1.set_behind(bub1.get_behind()+4*point_flag);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
if(bub1.get_flag()==2)
{
bub2.set_beyond(bub2.get_beyond()*10+4);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
return ;
}
if(bub1.get_flag()==3)
{
bub2.set_behind(bub2.get_behind()+4*point_flag);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
}
});
bt05.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(bub1.get_flag()==0)
{
bub1.set_beyond(bub1.get_beyond()*10+5);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
return ;
}
if(bub1.get_flag()==1)
{
bub1.set_behind(bub1.get_behind()+5*point_flag);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
if(bub1.get_flag()==2)
{
bub2.set_beyond(bub2.get_beyond()*10+5);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
return ;
}
if(bub1.get_flag()==3)
{
bub2.set_behind(bub2.get_behind()+5*point_flag);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
}
});
bt06.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(bub1.get_flag()==0)
{
bub1.set_beyond(bub1.get_beyond()*10+6);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
return ;
}
if(bub1.get_flag()==1)
{
bub1.set_behind(bub1.get_behind()+6*point_flag);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
if(bub1.get_flag()==2)
{
bub2.set_beyond(bub2.get_beyond()*10+6);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
return ;
}
if(bub1.get_flag()==3)
{
bub2.set_behind(bub2.get_behind()+6*point_flag);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
}
});
bt07.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(bub1.get_flag()==0)
{
bub1.set_beyond(bub1.get_beyond()*10+7);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
return ;
}
if(bub1.get_flag()==1)
{
bub1.set_behind(bub1.get_behind()+7*point_flag);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
if(bub1.get_flag()==2)
{
bub2.set_beyond(bub2.get_beyond()*10+7);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
return ;
}
if(bub1.get_flag()==3)
{
bub2.set_behind(bub2.get_behind()+7*point_flag);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
}
});
bt08.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(bub1.get_flag()==0)
{
bub1.set_beyond(bub1.get_beyond()*10+8);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
return ;
}
if(bub1.get_flag()==1)
{
bub1.set_behind(bub1.get_behind()+8*point_flag);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
if(bub1.get_flag()==2)
{
bub2.set_beyond(bub2.get_beyond()*10+8);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
return ;
}
if(bub1.get_flag()==3)
{
bub2.set_behind(bub2.get_behind()+8*point_flag);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
}
});
bt09.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(bub1.get_flag()==0)
{
bub1.set_beyond(bub1.get_beyond()*10+9);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
return ;
}
if(bub1.get_flag()==1)
{
bub1.set_behind(bub1.get_behind()+9*point_flag);
bub1.set_number(bub1.get_behind()+bub1.get_beyond());
text1.setText(bub1.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
if(bub1.get_flag()==2)
{
bub2.set_beyond(bub2.get_beyond()*10+9);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
return ;
}
if(bub1.get_flag()==3)
{
bub2.set_behind(bub2.get_behind()+9*point_flag);
bub2.set_number(bub2.get_behind()+bub2.get_beyond());
text2.setText(bub2.getnum()+"");
point_flag=point_flag*0.1d;
return ;
}
}
});
bt10.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(bub1.get_flag()==0)
{
bub1.set_flag(1);
return;
}
if(bub1.get_flag()==2)
{
bub1.set_flag(3);
}
}
});
bt11.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
point_flag=0.1;
bub1.set_cha('+');
bub1.set_flag(2);
}
});
bt12.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
point_flag=0.1;
bub1.set_cha('-');
bub1.set_flag(2);
}
});
bt13.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
point_flag=0.1;
bub1.set_cha('*');
bub1.set_flag(2);
}
});
bt14.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
point_flag=0.1;
bub1.set_cha('/');
bub1.set_flag(2);
}
});
bt15.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(bub1.get_char()=='+')
{
sum=bub1.getnum()+bub2.getnum();
text4.setText(bub1.get_char()+"");
}
else if(bub1.get_char()=='-')
{
sum=bub1.getnum()-bub2.getnum();
text4.setText(bub1.get_char()+"");
}
else if(bub1.get_char()=='*')
{
sum=bub1.getnum()*bub2.getnum();
text4.setText(bub1.get_char()+"");
}
else if(bub1.get_char()=='/')
{
sum=bub1.getnum()/bub2.getnum();
text4.setText(bub1.get_char()+"");
}
text3.setText(sum+"");
bub1.set_behind(0.0d);
bub1.set_beyond(0.0d);
bub1.set_flag(0);
}
});
bt16.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
bub1.set_behind(0.0);
bub1.set_beyond(0.0);
bub2.set_behind(0.0);
bub2.set_beyond(0.0);
bub1.set_number(0.0);
bub2.set_number(0.0);
text1.setText("");
text2.setText("");
text3.setText("");
text4.setText("");
point_flag=0.1;
sum=0.0;
bub1.set_flag(0);
}
});
this.setVisible(true);
this.validate();
}
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(arg0.getSource()==text1)//必须按enter键确认,麻烦
{
String num=text1.getText();
bub1.set_number(Double.parseDouble(num));
text3.setText(bub1.getnum()+"");
return ;
}
if(arg0.getSource()==text2)
{
String num=text2.getText();
bub2.set_number(Double.parseDouble(num));
text3.setText(bub2.getnum()+"");
return ;
}
if(arg0.getSource()==text3)
{
text3.setText("这是输出框");
return ;
}
}
}
截图:
