| 发表于:2007-12-26 08:53:36 楼主 |
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class jisuanqi extends jframe implements actionlistener{ private float num1,num2,num; //分别用来存储运算数和结果 private char sign; //存储输入的运算符 //定义并初始化控件 private jpanel p1=new jpanel(); private jpanel p2=new jpanel(); private jpanel p3=new jpanel(); private jpanel p4=new jpanel(); private jpanel p5=new jpanel(); private jpanel p6=new jpanel(); private jpanel p7=new jpanel(); private jpanel p8=new jpanel(); private jpanel p9=new jpanel(); private jtextfield text=new jtextfield("0",20);//定义文本域初始值为0 private jbutton clear=new jbutton("清除"); private jbutton b0=new jbutton("0"); private jbutton b1=new jbutton("1"); private jbutton b2=new jbutton("2"); private jbutton b3=new jbutton("3"); private jbutton b4=new jbutton("4"); private jbutton b5=new jbutton("5"); private jbutton b6=new jbutton("6"); private jbutton b7=new jbutton("7"); private jbutton b8=new jbutton("8"); private jbutton b9=new jbutton("9"); private jbutton ab=new jbutton("a"); private jbutton b=new jbutton("b"); private jbutton c=new jbutton("c"); private jbutton d=new jbutton("d"); private jbutton e=new jbutton("e"); private jbutton f=new jbutton("f"); private jbutton cheng=new jbutton("*"); private jbutton chu=new jbutton("/"); private jbutton jia=new jbutton("+"); private jbutton jian=new jbutton("-"); private jbutton deng=new jbutton("="); private jbutton dian=new jbutton("."); private jbutton sqrt=new jbutton("sqrt"); private jbutton mee=new jbutton("^"); private jbutton ox=new jbutton("二进制"); private jbutton dx=new jbutton("十进制"); private jbutton hex=new jbutton("十六进制"); public jisuanqi(){ super("计算器"); setresizable(false);//屏蔽最大化 this.getcontentpane().setlayout(new gridlayout(9,1)); this.getcontentpane().add(p1); this.getcontentpane().add(p6); this.getcontentpane().add(p2); this.getcontentpane().add(p3); this.getcontentpane().add(p4); this.getcontentpane().add(p5); this.getcontentpane().add(p7); this.getcontentpane().add(p8); this.getcontentpane().add(p9); //按钮 p1.add(text); p6.setlayout(new borderlayout()); p6.add("center",clear); p2.setlayout(new gridlayout(1,4)); p2.add(b7); p2.add(b8); p2.add(b9); p2.add(jia); p3.setlayout(new gridlayout(1,4)); p3.add(b4); p3.add(b5); p3.add(b6); p3.add(jian); p4.setlayout(new gridlayout(1,4)); p4.add(b1); p4.add(b2); p4.add(b3); p4.add(cheng); p5.setlayout(new gridlayout(1,4)); p5.add(dian); p5.add(b0); p5.add(ab); p5.add(chu); p7.setlayout(new gridlayout(1,4)); p7.add(b); p7.add(c); p7.add(d); p7.add(e); p8.setlayout(new gridlayout(1,4)); p8.add(f); p8.add(ox); p8.add(dx); p8.add(hex); p9.setlayout(new gridlayout(1,3)); p9.add(sqrt); p9.add(mee); p9.add(deng); b0.addactionlistener(this); b1.addactionlistener(this); b2.addactionlistener(this); b3.addactionlistener(this); b4.addactionlistener(this); b5.addactionlistener(this); b6.addactionlistener(this); b7.addactionlistener(this); b8.addactionlistener(this); b9.addactionlistener(this); /*ab.addactionlistener(this); b.addactionlistener(this); c.addactionlistener(this); d.addactionlistener(this); e.addactionlistener(this); f.addactionlistener(this);*/ b0.addkeylistener(new keyboard()); b1.addkeylistener(new keyboard()); b2.addkeylistener(new keyboard()); b3.addkeylistener(new keyboard()); b4.addkeylistener(new keyboard()); b5.addkeylistener(new keyboard()); b6.addkeylistener(new keyboard()); b7.addkeylistener(new keyboard()); b8.addkeylistener(new keyboard()); b9.addkeylistener(new keyboard()); /*a.addkeylistener(new keyboard()); b.addkeylistener(new keyboard()); c.addkeylistener(new keyboard()); d.addkeylistener(new keyboard()); e.addkeylistener(new keyboard()); f.addkeylistener(new keyboard());*/ clear.addactionlistener(this); jia.addactionlistener(this); jian.addactionlistener(this); cheng.addactionlistener(this); chu.addactionlistener(this); deng.addactionlistener(this); dian.addactionlistener(this); sqrt.addactionlistener(this); mee.addactionlistener(this); clear.addkeylistener(new keyboard()); jia.addkeylistener(new keyboard()); jian.addkeylistener(new keyboard()); cheng.addkeylistener(new keyboard()); chu.addkeylistener(new keyboard()); deng.addkeylistener(new keyboard()); dian.addkeylistener(new keyboard()); sqrt.addkeylistener(new keyboard()); mee.addkeylistener(new keyboard()); text.addkeylistener(new keyboard()); pack();show(); //窗口关闭 addwindowlistener(new windowadapter(){ public void windowclosing(windowevent we){ system.exit(0); } }); text.seteditable(false);//去掉文本的可编辑性 text.sethorizontalalignment(text.right);//文本右对齐 } |
|
|
|
|