版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、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 menuitem1,menuitem2,me
2、nuitem3,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("C
4、lose"menuitem4=new JMenuItem("Copy"menuitem5=new JMenuItem("Help"label=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 JBu
5、tton("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"b17=new JButton("
6、;+/-"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.
7、createBevelBorder(1;/建立一个立体的边界label.setOpaque(true;/设置不透明,以便设置背景色label.setBackground(Color.white;/设置背景色白色label.setHorizontalAlignment(SwingConstants.RIGHT;label.setCursor(new Cursor(Cursor.TEXT_CURSOR;add(panel1;GridBagLayout g=new GridBagLayout(;GridBagConstraints c=new GridBagConstraints(;panel1.s
8、etSize(350,200;panel1.setLayout(g;c.gridx=0; c.gridy=0;/这个属性是用来描述组件在布局时应处于那个网格位置,即描述网格开始的位置.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;/ 设置组件之间彼此的间距
9、。c.weightx=10.0; c.weighty=0.0;g.setConstraints(menubar,c;panel1.add(menubar;menubar.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
10、,c;panel1.add(label;c.gridy=70;c.gridheight=50;c.weighty=3.0;g.setConstraints(panel2,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
11、 Insets(1,1,1,1;j.weightx=3.0; j.weighty=3.0;i.setConstraints(b04,j;panel2.add(b04;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.grid
12、height=80;c.weighty=10.0;g.setConstraints(panel3,c;panel1.add(panel3;panel3.setLayout(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; pa
13、nel3.add(b12; panel3.add(b13; panel3.add(b14; panel3.add(b15;panel3.add(b16; panel3.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
14、(this; b3.addActionListener(this;b4.addActionListener(this; b5.addActionListener(this; b6.addActionListener(this;b7.addActionListener(this; b8.addActionListener(this; b9.addActionListener(this;b10.addActionListener(this; b11.addActionListener(this; b12.addActionListener(this;b13.addActionListener(th
15、is; b14.addActionListener(this; b15.addActionListener(this;b16.addActionListener(this; b17.addActionListener(this; b18.addActionListener(this;b19.addActionListener(this; b20.addActionListener(this;b01.addActionListener(this; b02.addActionListener(this; b03.addActionListener(this;b04.addActionListene
16、r(this; b05.addActionListener(this;/给按钮注册事件监视器public void actionPerformed(ActionEvent 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;
17、else if(e.getSource(=b05label.setText("" b=false;if(bif(e.getSource(=b1if(label.getText(.equals("0"label.setText("7"elseif(!clabel.setText(label.getText(.concat("7"elselabel.setText("7" c=false; n=0.0;if(e.getSource(=b2if(label.getText(.equals("
18、0"label.setText("8"elseif(!clabel.setText(label.getText(.concat("8"elselabel.setText("8" c=false; n=0.0;if(e.getSource(=b3if(label.getText(.equals("0"label.setText("9"elseif(!clabel.setText(label.getText(.concat("9"elselabel.setText(&q
19、uot;9" c=false; n=0.0;if(e.getSource(=b6if(label.getText(.equals("0"label.setText("4"elseif(!clabel.setText(label.getText(.concat("4"elselabel.setText("4" c=false; n=0.0; if(e.getSource(=b7if(label.getText(.equals("0"label.setText("5"e
20、lseif(!clabel.setText(label.getText(.concat("5"elselabel.setText("5" c=false; n=0.0; if(e.getSource(=b8if(label.getText(.equals("0"label.setText("6"elseif(!clabel.setText(label.getText(.concat("6"elselabel.setText("6" c=false; n=0.0; if(e.g
21、etSource(=b11if(label.getText(.equals("0"label.setText("1"elseif(!clabel.setText(label.getText(.concat("1"elselabel.setText("1" c=false; n=0.0; if(e.getSource(=b12if(label.getText(.equals("0"label.setText("2"elseif(!clabel.setText(label.get
22、Text(.concat("2"elselabel.setText("2" c=false; n=0.0; if(e.getSource(=b13if(label.getText(.equals("0"label.setText("3"elseif(!clabel.setText(label.getText(.concat("3"elselabel.setText("3" c=false; n=0.0; if(e.getSource(=b16if(label.getText(
23、.equals("0"label.setText("0" else if(!clabel.setText(label.getText(.concat("0" elselabel.setText("0" c=false; n=0.0; if(e.getSource(=b18 if(!label.getText(.contains("."label.setText(label.getText(.concat("." if(e.getSource(=b4 c=true; d=1;
24、m=m.valueOf(label.getText(; if(e.getSource(=b9 c=true; d=2; m=m.valueOf(label.getText(; if(e.getSource(=b14 c=true; d=3; m=m.valueOf(label.getText(; if(e.getSource(=b19 c=true; d=4; m=m.valueOf(label.getText(; if(e.getSource(=b15 m=m.valueOf(label.getText(; if(m=0label.setText("0 没有倒数" els
25、em=1/m; if(m.toString(.endsWith(".0" h=Value(; label.setText(h.toString(; elselabel.setText(m.toString(; if(e.getSource(=b5 m=m.valueOf(label.getText(; if(m<0label.setText("负数不能被开方" else 6 m=Math.sqrt(m; if(m.toString(.endsWith(".0" h=Value(; label.setText(
26、h.toString(; elselabel.setText(m.toString(; if(e.getSource(=b10 c=true; d=5; m=m.valueOf(label.getText(; if(e.getSource(=b17 r=0-m.valueOf(label.getText(; if(r.toString(.endsWith(".0" h=Value(; label.setText(h.toString(; elselabel.setText(m.toString(; if(e.getSource(=(b20 if(n=0n=n.valueOf(label.getText(; if(d=1 if(n!=0 m=m/n; if(m.toString(.endsWith(".0" h=Value(; label.setText(h.toString(; elselabel.setText(m.toString(; elselabel.setT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025内蒙古鄂尔多斯正源实业集团招聘笔试历年常考点试题专练附带答案详解
- 2025至2030中国装配式建筑产业发展趋势及投资回报分析报告
- 2025年工业设计专业产品结构设计测试试题及答案解析
- 2025年水电工工作报告
- 2026散装水泥产业政策调整与企业战略转型研究报告
- 2026散装橡胶制品市场供需趋势及投资可行性分析报告
- 2026散装建材行业市场现状与投资规划分析报告
- 2026散装医药物流行业竞争格局与投资价值评估报告
- 2026散装化肥市场季节性波动与农户采购行为分析报告
- 2026微生物菌剂在农业中的应用推广障碍及突破策略研究报告
- 代理记账业务内部规范模板
- 2026年浙江省浙共体中考数学一模试卷(含答案)
- 2026年高考地理真题和答案
- 2026年毛笔书法六级题库及答案
- 2026年黑龙江农业工程职业学院单招职业倾向性测试题库附答案详解
- 医学心理学虚拟案例库建设
- 纯化水监测管理制度
- 流行性腮腺炎课件及卷子
- 家畜普通病学课件
- 雨课堂学堂云在线《身边的营养学》单元测试考核答案
- 2025年六枝特区考调试题及答案
评论
0/150
提交评论