calcapp.java

来自「java的Applet 表达式解析器. 采用递归下隆解析法.可以进行四刚运算. 」· Java 代码 · 共 60 行

JAVA
60
字号
/*
 * 创建日期 2005-4-4
 *
 * TODO 要更改此生成的文件的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
import java.applet.*;
import java.awt.*;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
/**
 * @author Administrator
 *
 * TODO 要更改此生成的类型注释的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
public class CalcApp extends Applet implements ActionListener {
	TextField expText,resText;
	Parser p;
	public void init(){
		Label heading =new Label("正则表达式计算器",Label.CENTER);
		Label explab  =new Label("表达式         ",Label.CENTER);
		Label reslab  =new Label("计算结果       ",Label.CENTER);
		expText = new TextField(24);
		resText = new TextField(24);
		//结果为只读
		resText.setEditable(false);
		
		add(heading);
		add(explab);
		add(expText);
		add(reslab);
		add(resText);
		//注册文本框的监听器
		expText.addActionListener(this);
		//创建计算解析器
		p=new Parser();
	}
	//用户点击进入
	public void actionPerformed(ActionEvent ae){
		repaint();
	}
	public void paint(Graphics g){
		double result = 0.0;
		String expstr = expText.getText();
		try{
			if(expstr.length() != 0)
				result = p.evaluate(expstr);
			expText.setText("");
			resText.setText(Double.toString(result));
			showStatus("");
		}
		catch(ParserException exc){
			showStatus(exc.toString());
			resText.setText("");
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?