计算器JAVA代码发布

[tag]java[/tag]最近学校开始实习,每天都要打卡很早起来完全是公司管理制度,有点不习惯,前一个星期编写的小项目是计算器,就和WINDOW自带的计算器差不多.下一个项目为团队开发一个学籍系统,开发完后会公布代码,请关注我的博客.下面是我做的
[img=1,计算器代码,center]attachments/month_1004/n201041713914.png[/img] 在编写完后,打包成JAR成功运行,但是在打包成EXE后不能在非JAVA环境的系统下运行,找了好多资料都没解决这个问题:讲JRE打包到EXE里面! 这几天与到了这个问题让我纠结啊!
公共类:CalFrame
运用了内部类
详细参考代码:
[code]import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class CalFrame {

/**
* class name:CalFrame
* Create Data:2010-04-13
* Auther:Neptune
* Web:http;//www.netbeta.info
* E-mail:master@netbeta.info
*/
//创建3个字符串数组 定义按钮文字
private String[] KEYS={"7","8","9","/","sqrt","4","5","6","*","%","1","2","3","-","1/x","0","-/+",".","+","="};
private String[] M={" ","MC","MR","MS","M+"};
private String[] CAMMANDS={"BackSpace","CE","C"};

//创建3个按钮组
private JButton[] keys = new JButton[KEYS.length];
private JButton[] m = new JButton[M.length];
private JButton[] cammands = new JButton[CAMMANDS.length];

//定义文本框
private JTextField ResultText = new JTextField();

//创建计算器窗口
JFrame jf = new JFrame("计算器-http://izzzzz.com-By Neptune");

//开始组装按钮,将按钮组装起来,使用的是JPanel
//创建计算按钮面板
JPanel calJp = new JPanel();
//创建M按钮面板
JPanel mJp = new JPanel();
//创建功能按钮面板
JPanel camJp = new JPanel();
//创建功能 计算 按钮组合面板
JPanel camcalJp=new JPanel();
//创建文本框
JPanel topJp = new JPanel();
//创建文本框与其他组合面板
JPanel mCamCalJp=new JPanel();
//设置是否是第一个字符
boolean isFirst=true;
//定义一个变量
boolean isVal=true;
//定义一个存储数据的变量
double result=0.0;
//定义操作符变量
String op="=";
public static void main(String[] args)
{
CalFrame cf = new CalFrame();
cf.init();

}

//方法,初始化图面界
void init()
{
////设置关闭动作,从内存中清除,而非隐藏
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置文本框背景
ResultText.setBackground(Color.WHITE);
ResultText.setHorizontalAlignment(JTextField.RIGHT);//光标靠右
ResultText.setEditable(false);
ResultText.setText("0");
//for循环创建按钮运算按钮
for(int i=0;i=0)
handleNumber(s);
//System.out.println(e.getActionCommand());
else if("BackSpaceCEC".indexOf(s)>=0)
handleCammand(s);
else
hanleOp(s);

}

void handleNumber (String s)
{
if(isFirst)
{
if(s.equals("."))
{
ResultText.setText("0"+s);
}
else
ResultText.setText(s);
isFirst=false;

}
else
{
if(s.equals("."))
{
if(ResultText.getText().indexOf(".")<0) ResultText.setText(ResultText.getText()+s); } else if(ResultText.getText().equals("0")) ResultText.setText(s); else ResultText.setText(ResultText.getText()+s); } } //功能按钮方法使用substring void handleCammand (String s) { if(s.equals("BackSpace")) { int i=ResultText.getText().length()-1; if(ResultText.getText().length()==1) ResultText.setText("0"); else { String s1=ResultText.getText().substring(0,i); ResultText.setText(s1); } } if(s.equals("C")) { ResultText.setText("0"); isFirst=true; result=0.0; } if(s.equals("CE")) { ResultText.setText(""); } } //定义一个方法王城双精度的转换 double resultDouble() { double d=0.0; try { d=Double.valueOf(ResultText.getText()); } catch(Exception e) { System.out.println("数据转换错误"); } return d; } //定义一个计算方法 void hanleOp(String s) { if(op.equals("+")) { result+=resultDouble(); } if(op.equals("-")) { result-=resultDouble(); } if(op.equals("*")) { result*=resultDouble(); } if(op.equals("/")) { if(resultDouble() ==0.0) { ResultText.setText("除数必须非零"); isFirst=true; isVal=false; op="="; } else result/=resultDouble(); } if(op.equals("+/-")) { result*=(-1); } if(op.equals("1/x")) { if(result==0) { ResultText.setText("零没有倒数"); isFirst=true; isVal=false; op="="; } else result=1/resultDouble(); } if(op.equals("%")) { if(resultDouble()==0) result=0.0; else result/=(100); } if(op.equals("sqrt")) { result=Math.sqrt(result); } if(op.equals("=")) { result=resultDouble(); } //处理数据 //使用给结果加上"%" if(op.equals("%")) ResultText.setText(result*100+"%"); // else if(isVal) { ResultText.setText(result+""); op=s; } isFirst=true; isVal=true; // if(op.equals("1/x")) //使用1/X表示倒数 // ResultText.setText("1"+"/"+result);//使用1/X表示倒数 } } } [/code] 下面是:代码,EXE,JAR打包下载 点击下载此文件

评论 (1)
  1. 沙发
    Magic 2010-04-17 03:53

    那么牛