日期:2014-05-20  浏览次数:20685 次

这个问题有点意思,大神来
package 发射器;
import java.awt.BorderLayout; 
import java.awt.Button;
import java.awt.Color;
import java.awt.Dialog;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.Panel;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class fsq {

public static void main(String[] args) {
// TODO 自动生成的方法存根
MyFrame52 mm=new MyFrame52();
}

}
class MyFrame52 extends Frame{
TextField tf=new TextField(25);
JButton b3=new JButton("DEL");
JButton b33=new JButton("AC/ON");
JButton b4=new JButton("0");
JButton b41=new JButton("=");
JButton b42=new JButton("+");
JButton b1=new JButton("1");
JButton b2=new JButton("2");
JButton b_3=new JButton("3");
JButton b_4=new JButton("4");
JButton b5=new JButton("5");
JButton b6=new JButton("6");
JButton b7=new JButton("7");
JButton b8=new JButton("8");
JButton b9=new JButton("9");
JButton b_chu=new JButton("÷");
JButton b_cheng=new JButton("×");
JButton b_jian=new JButton("-");
MyFrame52(){
JLabel l=new JLabel("     单功能计算器");
l.setForeground(Color.black);
JPanel pla=new JPanel();
pla.add(l);
b3.addActionListener(new listen(this));
b33.addActionListener(new listen(this));
b4.addActionListener(new listen(this));
b41.addActionListener(new listen(this));
b42.addActionListener(new listen(this));
b1.addActionListener(new listen(this));
b2.addActionListener(new listen(this));
b_3.addActionListener(new listen(this));
b_4.addActionListener(new listen(this));
b5.addActionListener(new listen(this));
b6.addActionListener(new listen(this));
b7.addActionListener(new listen(this));
b8.addActionListener(new listen(this));
b9.addActionListener(new listen(this));
b_chu.addActionListener(new listen(this));
b_cheng.addActionListener(new listen(this));
b_jian.addActionListener(new listen(this));

JFrame f=new JFrame("计算器");
JPanel p=new JPanel();
p.setLayout(new GridLayout(3,1,4,4));
JPanel p1=new JPanel();
JPanel p2=new JPanel();
p2.setLayout(new GridLayout(3,3,4,4));
p2.add(b7);
p2.add(b9);
p2.add(b_cheng);
p2.add(b_4);
p2.add(b5);
p2.add(b6);
p2.add(b_chu);
p2.add(b1);
p2.add(b2);
p2.add(b_3);
p2.add(b_jian);

JPanel p3=new JPanel();
p3.setLayout(new GridLayout(1,2,0,0));
Panel p4=new Panel();
BorderLayout s=new BorderLayout();
//b41.setForeground(Color.black);
p4.setLayout(s);
p4.setForeground(Color.black);
p4.add(b4,BorderLayout.WEST);
p4.add(b41,BorderLayout.EAST);
p4.add(b42,BorderLayout.CENTER);
p1.setLayout(s);
p1.add(tf);
b33.setForeground(Color.black);
b3.setForeground(Color.black);
p3.add(b3);
p3.add(b33);
p.add(l,BorderLayout.NORTH );
p.add(p1,BorderLayout.CENTER);
p.add(p3,BorderLayout.SOUTH );
f.setLayout(new BorderLayout(30,5));
f.add(p,BorderLayout.NORTH);
f.add(p2,BorderLayout.CENTER);
f.add(p4,BorderLayout.SOUTH);
f.pack();
f.setVisible(true);
f.setLocation(900,300);
f.setSize(200, 300);
f.setResizable(true);

}
}
class listen implements ActionListener{
MyFrame52 dd;
listen(MyFrame52 ds){this.dd=ds;}
public static int zhi=0;
public static int nextzhi=0;
public static int sum=0;
public static int fuhao;
public void actionPerformed(ActionEvent e){
if(dd.b1==e.getSource()){
dd.tf.setText(dd.tf.getText()+"1");
}else if(dd.b2==e.getSource()){
dd.tf.setText(dd.tf.getText()+"2");
}else if(dd.b_3==e.getSource()){
dd.tf.setText(dd.tf.getText()+"3");
}else if(dd.b_4==e.getSource()){
dd.tf.setText(dd.tf.getText()+"4");
}else if(dd.b5==e.getSource()){
dd.tf.setText(dd.tf.getText()+"5");
}else if(dd.b6==e.getSource()){
dd.tf.setText(dd.tf.getText()+"6");
}else if(dd.b7==e.getSource()){
dd.tf.setText(dd.tf.getText()+"7");
}else if(dd.b8==e.getSource()){
dd.tf.setText(dd.tf.getText()+"8");
}else if(dd.b9==e.getSource()){
dd.tf.setText(dd.tf.getText()+"9");
}else if(dd.b_cheng==e.getSource()){
fuhao=1;
zhi=Integer.parseInt(dd.tf.getText());
dd.tf.setText("");    
} else if (dd.b_chu == e.getSource()) {// 计算除法    
fuhao = 2;     
zhi = Integer.parseInt(dd.tf.getText());// 得到了文本框里的值;  
dd.tf.setText("");   
} else if (dd.b_jian == e.getSource()) {// 计算减法