当前位置:首页 > 面向对象程序设计课程设计-计算器
public Calculator() //构造方法设置布局、为按钮注册事件监听器 { super(\ this.setLocation(240,200); this.setSize(350,300); this.setResizable(true);
this.setLayout(new GridLayout(7,1));
this.addmyMenu(); //调用成员方法添加菜单 displayField=new JTextField(30); this.add(displayField);
displayField.setEditable(true); start=true; result=0;
lastCommand = \
panel0.setLayout(new GridLayout(1,4,4,4));
JPanel panel1=new JPanel(); panel1.setLayout(new GridLayout(1,5,4,4)); this.add(panel1);
button_plusminus=new JButton(\ button_exp=new JButton(\ button_CE=new JButton(\退格\ button_cancel=new JButton(\
JPanel panel2=new JPanel();
panel2.setLayout(new GridLayout(1,5,4,4)); this.add(panel2);
button_7=new JButton(\ button_8=new JButton(\ button_9=new JButton(\ button_log=new JButton(\
button_divide=new JButton(\
panel3.setLayout(new GridLayout(1,5,4,4)); this.add(panel3);
button_4=new JButton(\
button_5=new JButton(\
9
JPanel panel0=new JPanel();
button_sqrt=new JButton(\
JPanel panel3=new JPanel();
button_6=new JButton(\
button_tan=new JButton(\ button_multiply=new JButton(\
JPanel panel4=new JPanel(); panel4.setLayout(new GridLayout(1,5,4,4)); this.add(panel4);
button_1=new JButton(\ button_2=new JButton(\ button_3=new JButton(\ button_cos=new JButton(\
button_minus=new JButton(\
JPanel panel5=new JPanel(); panel5.setLayout(new GridLayout(1,5,4,4)); this.add(panel5);
button_0=new JButton(\
button_point=new JButton(\ button_equal=new JButton(\ button_sin=new JButton(\ button_plus=new JButton(\ panel1.add(button_sqrt);
panel1.add(button_plusminus); panel1.add(button_exp); panel1.add(button_CE);
panel1.add(button_cancel);
panel2.add(button_7); panel2.add(button_8); panel2.add(button_9); panel2.add(button_log); panel2.add(button_divide); panel3.add(button_4); panel3.add(button_5); panel3.add(button_6); panel3.add(button_tan);
panel3.add(button_multiply);
panel4.add(button_1); panel4.add(button_2); panel4.add(button_3); panel4.add(button_cos); panel4.add(button_minus); panel5.add(button_0);
panel5.add(button_point);
10
panel5.add(button_equal);
panel5.add(button_sin); panel5.add(button_plus); button_sqrt.addActionListener(this);
}
private void addmyMenu() {
//菜单的添加
button_plusminus.addActionListener(this); button_exp.addActionListener(this); button_CE.addActionListener(this);
button_cancel.addActionListener(this); button_7.addActionListener(this); button_8.addActionListener(this); button_9.addActionListener(this); button_log.addActionListener(this); button_divide.addActionListener(this); button_4.addActionListener(this); button_5.addActionListener(this); button_6.addActionListener(this); button_tan.addActionListener(this);
button_multiply.addActionListener(this); button_1.addActionListener(this); button_2.addActionListener(this); button_3.addActionListener(this); button_cos.addActionListener(this); button_minus.addActionListener(this); button_0.addActionListener(this); button_point.addActionListener(this); button_equal.addActionListener(this); button_sin.addActionListener(this); button_plus.addActionListener(this);
this.addWindowListener(new WinClose()); //注册窗口监听器 this.setVisible(true);
JMenuBar menubar=new JMenuBar(); //创建并初始化菜单栏 this.add(menubar);//添加菜单栏到主界面
JMenu m1=new JMenu(\选项\创建JMenu对象m1
JMenuItem m1_exit=new JMenuItem(\退出\创建JMenuItem菜单项并初始化为
退出
m1_exit.addActionListener(this);
JMenu m3 = new JMenu(\帮助\ JMenuItem m3_Help = new JMenuItem(\用法\
11
m3_Help.addActionListener(this);
dialog = new Dialog(this,\提示\模式窗口 dialog.setSize(240,80);
label_dialog = new Label(\标签的字符串为空,居中对齐
dialog.add(label_dialog);
dialog.addWindowListener(this); //为对话框注册窗口事件监听器 |
m1.add(m1_exit); menubar.add(m1); m2.add(m2_ejz); m2.add(m2_bjz); menubar.add(m2); m3.add(m3_Help); menubar.add(m3);
}
public void actionPerformed(ActionEvent e) //按钮的单击事件处理方法 {
if(e.getSource().equals(button_1)||e.getSource().equals(button_2)|| e.getSource().equals(button_3)||e.getSource().equals(button_4)||
e.getSource().equals(button_5)|| e.getSource().equals(button_6)|| e.getSource().equals(button_7)|| e.getSource().equals(button_8)|| e.getSource().equals(button_9) ||e.getSource().equals(button_0)||
e.getSource().equals(button_point)||e.getSource().equals(button_plusminus)|
e.getSource().equals(button_cancel)||e.getSource().equals(button_CE)) { //非运算符的处理方法 String input=e.getActionCommand();
if (start) { }
if(!input.equals(\{
String str=displayField.getText();
if(input.equals(\退格\退格键的实现方法 {
if(str.length()>0) displayField.setText(str.substring(0,str.length()-1)); displayField.setText(\start=false;
if(input.equals(\ displayField.setText(displayField.getText()+\
12
共分享92篇相关文档