1、Java课程设计计算器源程序代码package jisuanqi;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.*;public class JiSuanQi extends JFrame implements ActionListener/ JiSuanQi 继承Frame实现ActionListener接口JMenuBar menubar;/定义一个菜单JMenu menu1,menu2,menu3;/定义菜单组件各个部分的对象JMenuItem menuit
2、em1,menuitem2,menuitem3,menuitem4,menuitem5;/定义对象下的菜单项JLabel label;JButtonb1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15,b16,b17,b18,b19,b20,b01,b02,b03,b04,b05;JPanel panel1,panel2,panel3;/定义三个面板String a=0;boolean b,c;Double m=0.0,n=0.0,r=0.0;Integer h=0;int d;public JiSuanQi(setTitle(jisuanqi;
3、panel1=new JPanel(;panel2=new JPanel(;panel3=new JPanel(;menubar=new JMenuBar(;/以下生成菜单组件对象menu1=new JMenu(File;menu2=new JMenu(Edit;menu3=new JMenu(Help;menuitem1=new JMenuItem(ON;menuitem2=new JMenuItem(OFF;menuitem3=new JMenuItem(Close;menuitem4=new JMenuItem(Copy;menuitem5=new JMenuItem(Help;labe
4、l=new JLabel(;b1=new JButton(7;b2=new JButton(8;b3=new JButton(9;b4=new JButton(/;b5=new JButton(sqrt;b6=new JButton(4;b7=new JButton(5;b8=new JButton(6;b9=new JButton(*;b10=new JButton(%;b11=new JButton(1;b12=new JButton(2;b13=new JButton(3;b14=new JButton(-;b15=new JButton(1/x;b16=new JButton(0;b1
5、7=new JButton(+/-;b18=new JButton(.;b19=new JButton(+;b20=new JButton(=;b01=new JButton(Backspace;b02=new JButton(CE;b03=new JButton(C;b04=new JButton(ON;b05=new JButton(OFF;setSize(350,240;label.setBorder(BorderFactory.createBevelBorder(1;/建立一个立体的边界label.setOpaque(true;/设置不透明,以便设置背景色label.setBackgr
6、ound(Color.white;/设置背景色白色label.setHorizontalAlignment(SwingConstants.RIGHT;label.setCursor(new Cursor(Cursor.TEXT_CURSOR;add(panel1;GridBagLayout g=new GridBagLayout(;GridBagConstraints c=new GridBagConstraints(;panel1.setSize(350,200;panel1.setLayout(g;c.gridx=0; c.gridy=0;/这个属性是用来描述组件在布局时应处于那个网格位置
7、,即描述网格开始的位置.gridx=0,gridy=0时放在0行0列.c.gridwidth=350; c.gridheight=20;/这两个属性用来描述组件在布局中的所占的网格的个数,gridwidth描述了该组件在横向上所占网格的个数,gridheight描述了该组件在纵向上所占网格的个数c.fill=GridBagConstraints.BOTH;c.insets=new Insets(1,1,1,1;/ 设置组件之间彼此的间距。c.weightx=10.0; c.weighty=0.0;g.setConstraints(menubar,c;panel1.add(menubar;men
8、ubar.add(menu1;menubar.add(menu2;menubar.add(menu3;menu1.add(menuitem1;menu1.add(menuitem2;menu1.addSeparator(;menu1.add(menuitem3;menu2.add(menuitem4;menu3.add(menuitem5;c.gridy=20;c.gridheight=50;g.setConstraints(label,c;panel1.add(label;c.gridy=70;c.gridheight=50;c.weighty=3.0;g.setConstraints(pa
9、nel2,c;panel1.add(panel2;GridBagLayout i=new GridBagLayout(;GridBagConstraints j=new GridBagConstraints(;panel2.setLayout(i;j.gridx=0; j.gridy=0;j.gridwidth=68; j.gridheight=40;j.fill=GridBagConstraints.BOTH;j.insets=new Insets(1,1,1,1;j.weightx=3.0; j.weighty=3.0;i.setConstraints(b04,j;panel2.add(b
10、04;j.gridx=70;i.setConstraints(b01,j;panel2.add(b01;j.gridx=140;i.setConstraints(b02,j;panel2.add(b02;j.gridx=210;i.setConstraints(b03,j;panel2.add(b03;j.gridx=280;i.setConstraints(b05,j;panel2.add(b05;c.gridy=120;c.gridheight=80;c.weighty=10.0;g.setConstraints(panel3,c;panel1.add(panel3;panel3.setL
11、ayout(new GridLayout(4,5;/pencel3面板设置为4行5列共20个网格panel3.add(b1; panel3.add(b2; panel3.add(b3; panel3.add(b4; panel3.add(b5;/添加按钮panel3.add(b6; panel3.add(b7; panel3.add(b8; panel3.add(b9; panel3.add(b10;panel3.add(b11; panel3.add(b12; panel3.add(b13; panel3.add(b14; panel3.add(b15;panel3.add(b16; pan
12、el3.add(b17; panel3.add(b18; panel3.add(b19; panel3.add(b20;menuitem1.addActionListener(this; menuitem2.addActionListener(this; menuitem3.addActionListener(this;/注册菜单项的事件监听器b1.addActionListener(this; b2.addActionListener(this; b3.addActionListener(this;b4.addActionListener(this; b5.addActionListener
13、(this; b6.addActionListener(this;b7.addActionListener(this; b8.addActionListener(this; b9.addActionListener(this;b10.addActionListener(this; b11.addActionListener(this; b12.addActionListener(this;b13.addActionListener(this; b14.addActionListener(this; b15.addActionListener(this;b16.addActionListener
14、(this; b17.addActionListener(this; b18.addActionListener(this;b19.addActionListener(this; b20.addActionListener(this;b01.addActionListener(this; b02.addActionListener(this; b03.addActionListener(this;b04.addActionListener(this; b05.addActionListener(this;/给按钮注册事件监视器public void actionPerformed(Action
15、Event e/处理按钮事件if(e.getSource(=menuitem1label.setText(a; b=true;else if(e.getSource(=menuitem2label.setText(; b=false;else if(e.getSource(=menuitem3System.exit(0;else if(e.getSource(=b04label.setText(a; b=true;else if(e.getSource(=b05label.setText(; b=false;if(bif(e.getSource(=b1if(label.getText(.equals(0label.setText(7;elseif(!clabel.setText(label.getText(.concat(7;elselab
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1