挑战高手的题目,简单计算器程序已有,如何用java实现其语音功能

来源:互联网  时间:2016/6/21 11:45:56

关于网友提出的“ 挑战高手的题目,简单计算器程序已有,如何用java实现其语音功能”问题疑问,本网通过在网上对“ 挑战高手的题目,简单计算器程序已有,如何用java实现其语音功能”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 挑战高手的题目,简单计算器程序已有,如何用java实现其语音功能
描述:

单计算器程序已有,如何用java实现其语音功能()????//前期简单计算器代码如下:
import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 
public class test_actionevent { 
/** 
* @param args 
*/ 
public static void main(String[] args) { 
// TODO 自动生成方法存根 
CalculatorFrame frame = new CalculatorFrame(); 
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置默认的关闭操作 
frame.setVisible(true); 


class CalculatorFrame extends JFrame{//设计了一个容器类,是整个计算器的顶层容器 
public static final int WIDTH = 200; 
public static final int HEIGHT = 200; 
public CalculatorFrame(){ 
this.setTitle("计算器"); 
this.setSize(WIDTH,HEIGHT); 
Container contentPane = this.getContentPane(); 
CalculatorPanel pan = new CalculatorPanel(); 
contentPane.add(pan); 


class CalculatorPanel extends JPanel{//设计一个计算器的界面,打算用来放置按钮和其他组件 
private JTextField display; 
private JPanel panel; 
private double result; 
private String lastCommand; 
private boolean start; 
public CalculatorPanel(){ 
this.setLayout(new BorderLayout());//设置这个容器的布局格式 
result = 0; 
lastCommand = "="; 
start = true; 
display = new JTextField("0"); 
display.setEditable(true);//设置文本框为不可编辑 
this.add(display,BorderLayout.NORTH);//在这个容器里面放置文本框,并将文本框放在北部 
ActionListener insert = new InsertAction();//创建了ActionListener对象 
ActionListener command = new CommandAction(); 
panel = new JPanel();//创建了一个面板对象 
panel.setLayout(new GridLayout(4,4));//将这个panel的布局格式设置为Grid 
addButton("7",insert);//添加按钮7,并让insert对象的actionPerformed来处理单击操作事件 
addButton("8",insert); 
addButton("9",insert); 
addButton("/",command);//添加按钮/,并让command对象的actionPerformed来处理单击操作事件 
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);//添加按钮+,并让command对象的actionPerformed来处理单击操作事件 
this.add(panel,BorderLayout.CENTER);//将面板放在中间 

private void addButton(String label,ActionListener listener){ 
JButton button = new JButton(label);//创建一个按钮,按钮上的字是label 
button.addActionListener(listener);//给创建的按钮注册一个监听器对象 
panel.add(button);//将创建的按钮放到面板上 

private class InsertAction implements ActionListener{ 
public void actionPerformed(ActionEvent arg0) { 
// TODO 自动生成方法存根 
String input = arg0.getActionCommand(); 
if (start){ 
display.setText(""); 
start = false; 

display.setText(display.getText()+input); 


private class CommandAction implements ActionListener{ 
public void actionPerformed(ActionEvent arg0) { 
// TODO 自动生成方法存根 
String command = arg0.getActionCommand(); 
if (start){ 
if (command.equals("-")){ 
display.setText(command); 
start = false; 
}else{ 
lastCommand = command; 

}else{ 
calculate(Double.parseDouble(display.getText()));//将文本框中的字符串变成Double,并计算 
lastCommand = command; 
start = true; 



public void calculate(double x){//计算结果 
if (lastCommand.equals("+")) result+=x; 
else if (lastCommand.equals("-")) result-=x; 
else if (lastCommand.equals("*")) result*=x; 
else if (lastCommand.equals("/")) result/=x; 
else if (lastCommand.equals("=")) result=x; 
display.setText(""+result); 


那个高手可以挑战这个题目:
或者您写一个完整的也可以.先谢了

上一篇为什么会重复的读取文件???
下一篇菜鸟的问题,我应该如何实现搜索一个网页上指定字符串
明星图片
相关文章
《 挑战高手的题目,简单计算器程序已有,如何用java实现其语音功能》由码蚁之家搜集整理于网络,
联系邮箱:mxgf168#qq.com(#改为@)