display=new JButton("0"); //产生一个文本框在框架的北部
f=new Font("Serif",Font.BOLD,20);
display.setFont(f);
display.setEnabled(false); //不能用于更改
add(display,BorderLayout.NORTH);
ActionListener insert=new InsertAction();
ActionListener command=new CommandAction();
panel.setLayout(new GridLayout(4,4)); //每行插入四个Button,共四行,共16个Button,如下
addButton("7",insert);
addButton("8",insert);
addButton("9",insert);
addButton("/",command);
addButton("4",insert);
addButton("5",insert);
addButton("6",insert);
addButton("*",command);
addButton("1",insert);
addButton("2",insert);
addButton("3",insert);
addButton("-",command);
addButton("0",insert);
addButton(".",insert);
addButton("=",command);
addButton("+",command);
add(panel);
}
private void addButton(String label,ActionListener listener){ //添加Button,并添加监听器
JButton button=new JButton(label);
button.addActionListener(listener);
panel.add(button);
}
private class InsertAction implements ActionListener{
public void actionPerformed(ActionEvent event){
String input=event.getActionCommand(); //得到按钮的标签
if(start){ //若刚开始,则初始化为空
display.setText("");
start=false;
}
display.setText(display.getText()+input); //显示所添加的内容
}
}
原文请找腾讯752018766辣,文-论'文.网
http://www.751com.cn/ 这个数是负数
display.setText(command);
start=false;
}
else
lastCommand=command;
}
else{
calculate(Double.parseDouble(display.getText()));
lastCommand=command;
start=true;
}
}
private void calculate(double x){ //运算过程,并显示
if(lastCommand.equals("/")&&x==0){
display.setText("除数不能为0!请重新输入");
Toolkit.getDefaultToolkit().beep();
}
else{
if(lastCommand.equals("+"))
result+=x;
if(lastCommand.equals("-"))
result-=x;
if(lastCommand.equals("*"))
result*=x;
if(lastCommand.equals("/"))
result/=x;
if(lastCommand.equals("="))
result=x;
display.setText(""+result);
}
}
}
private Font f;
private JButton display;
private JPanel panel;
private double result;
private String lastCommand;
private boolean start;
上一页 [1] [2]
java设计一个简单的计算器类 第2页下载如图片无法显示或论文不完整,请联系qq752018766