程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 求大神解答一下-程序問什麼運行不出來

求大神解答一下-程序問什麼運行不出來

編輯:編程綜合問答
程序問什麼運行不出來

import java.applet.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
//import java.Math.*;
public class cal extends Applet
{
//定義所有需要使用的全局變量
String str="0";//暫存顯示屏數據
String sign="null";//暫存符號數據
double num=0;//暫存內部運算數據
boolean change=false;//暫存內部四則運算起用

GridLayout g0,g1;//定義AWT布局部件
JTextField number;
Button num_p,num_0,num_1,num_2,num_3,num_4,num_5,num_6,num_7,num_8,num_9;
Button act_add,act_mul,act_div,act_sub;
Button mat_sin,mat_cos,mat_tan;
Button do_ans,do_del;
Panel p0,p1;

public void init()//主程序部分
{
//定義各個控件的樣式
number=new JTextField(20);//顯示屏
number.setHorizontalAlignment(JTextField.RIGHT);
number.setEnabled(false);
number.setText("0");

num_p=new Button(".");//小數點的按鈕
num_p.setForeground(Color.red);
num_p.addActionListener(new getbt());

num_0=new Button("0");//數字0的按鈕
num_0.setForeground(Color.red);
num_0.addActionListener(new getbt());

num_1=new Button("1");//數字1的按鈕
num_1.setForeground(Color.red);
num_1.addActionListener(new getbt());

num_2=new Button("2");//數字2的按鈕
num_2.setForeground(Color.red);
num_2.addActionListener(new getbt());

num_3=new Button("3");//數字3的按鈕
num_3.setForeground(Color.red);
num_3.addActionListener(new getbt());

num_4=new Button("4");//數字4的按鈕
num_4.setForeground(Color.red);
num_4.addActionListener(new getbt());

num_5=new Button("5");//數字5的按鈕
num_5.setForeground(Color.red);
num_5.addActionListener(new getbt());

num_6=new Button("6");//數字6的按鈕
num_6.setForeground(Color.red);
num_6.addActionListener(new getbt());

num_7=new Button("7");//數字7的按鈕
num_7.setForeground(Color.red);
num_7.addActionListener(new getbt());

num_8=new Button("8");//數字8的按鈕
num_8.setForeground(Color.red);
num_8.addActionListener(new getbt());

num_9=new Button("9");//數字9的按鈕
num_9.setForeground(Color.red);
num_9.addActionListener(new getbt());

act_add=new Button("+");//加法的按鈕
act_add.setForeground(Color.red);
act_add.addActionListener(new getbt());

act_sub=new Button("-");//減法的按鈕
act_sub.setForeground(Color.red);
act_sub.addActionListener(new getbt());

act_mul=new Button("*");//乘法的按鈕
act_mul.setForeground(Color.red);
act_mul.addActionListener(new getbt());

act_div=new Button("/");//除法的按鈕
act_div.setForeground(Color.red);
act_div.addActionListener(new getbt());

do_ans=new Button("=");//等於的按鈕
do_ans.setForeground(Color.red);

do_ans.addActionListener(new getbt());

do_del=new Button("del");//刪除的按鈕
do_del.setForeground(Color.red);
do_del.addActionListener(new getbt());

mat_sin=new Button("sin");//sin的按鈕
mat_sin.setForeground(Color.red);
mat_sin.addActionListener(new getbt());

mat_cos=new Button("cos");//cos的按鈕
mat_cos.setForeground(Color.red);
mat_cos.addActionListener(new getbt());

mat_tan=new Button("tan");//tan的按鈕
mat_tan.setForeground(Color.red);
mat_tan.addActionListener(new getbt());

//布局整個計算器
g0=new GridLayout(1,1,10,10);//布局輸入輸出大體位置
g1=new GridLayout(4,5,10,10);

p0=new Panel(); //顯示屏的布局
p0.setLayout(g0);
p0.add(number);
p0.setBounds(0,0,100,50);

//按紐的布局
p1=new Panel();
p1.setLayout(g1);
p1.add(num_1);//第一排按紐
p1.add(num_2);
p1.add(num_3);
p1.add(act_add);
p1.add(act_sub);

p1.add(num_4);//第二排按紐
p1.add(num_5);
p1.add(num_6);
p1.add(act_mul);
p1.add(act_div);

p1.add(num_7);//第三排按紐
p1.add(num_8);
p1.add(num_9);
p1.add(mat_sin);
p1.add(mat_cos);

p1.add(num_0);//第四排按鈕
p1.add(num_p);
p1.add(do_ans);
p1.add(do_del);
p1.add(mat_tan);
p1.setBounds(5,60,400,250);
p1.setBackground(Color.cyan);//設置按鈕背景顏色

setLayout(null);
add(p0);
add(p1);

this.setBackground(Color.cyan);//設置背景整體顏色
}

class getbt implements ActionListener //監聽作出反應的類
{
public void actionPerformed(ActionEvent e)//對每個每個按鈕做出響應
{
if(e.getSource()==num_0)
press0();
else if(e.getSource()==num_1)
press1();
else if(e.getSource()==num_2)
press2();
else if(e.getSource()==num_3)
press3();
else if(e.getSource()==num_4)
press4();
else if(e.getSource()==num_5)
press5();
else if(e.getSource()==num_6)
press6();
else if(e.getSource()==num_7)
press7();
else if(e.getSource()==num_8)
press8();
else if(e.getSource()==num_9)
press9();
else if(e.getSource()==num_p)
pressp();
else if(e.getSource()==act_add)
pressadd();
else if(e.getSource()==act_mul)
pressmul();
else if(e.getSource()==act_div)
pressdiv();
else if(e.getSource()==act_sub)
presssub();
else if(e.getSource()==mat_sin)
presssin();
else if(e.getSource()==mat_tan)
presstan();
else if(e.getSource()==mat_cos)
presscos();
else if(e.getSource()==do_ans)
pressans();
else if (e.getSource()==do_del)
pressdel();
}

}
public void press0()//對按0作出反應
{
if(str.length()<16 && str!="0" && change==false)
{
str+="0";
}
else if(str=="0" || sign!="null")
{
str="0";
}
number.setText(str);
}

public void press1()//對按1作出反應
{
if(str.length()<16 && str!="0" && change==false)
{
str+="1";
}
else if(str=="0"|| sign!="null")
{
str="1";
change=false;
}
number.setText(str);
}

public void press2()//對按2作出反應
{
if(str.length()<16 && str!="0" && change==false)
{
str+="2";
}
else if(str=="0" || sign!="null")
{
str="2";
change=false;
}
number.setText(str);
}

public void press3()//對按3作出反應
{
if(str.length()<16 && str!="0" && change==false)
{
str+="3";
}
else if(str=="0" || sign!="null")
{
str="3";
change=false;
}
number.setText(str);
}
public void press4()//對按4作出反應
{
if(str.length()<16 && str!="0" && change==false)
{
str+="4";
}
else if(str=="0" || sign!="null")
{
str="4";
change=false;
}
number.setText(str);
}

public void press5()//對按5作出反應
{
if(str.length()<16 && str!="0" && change==false)
{
str+="5";
}
else if(str=="0" || sign!="null")
{
str="5";
change=false;
}
number.setText(str);
}

public void press6()//對按6作出反應
{
if(str.length()<16 && str!="0" && change==false)
{
str+="6";
}
else if(str=="0" || sign!="null")
{
str="6";
change=false;
}
number.setText(str);
}

public void press7()//對按7作出反應
{
if(str.length()<16 && str!="0" && change==false)
{
str+="7";
}
else if(str=="0" || sign!="null")
{
str="7";
change=false;
}
number.setText(str);
}

public void press8()//對按8作出反應
{
if(str.length()<16 && str!="0" && change==false)
{
str+="8";
}
else if(str=="0" || sign!="null")
{
str="8";
change=false;
}
number.setText(str);
}

public void press9()//對按9作出反應
{
if(str.length()<16 && str!="0" && change==false)
{
str+="9";
}
else if(str=="0" || sign!="null")
{
str="9";
change=false;
}
number.setText(str);
}

public void pressp()//對按.作出反應
{
boolean p=false;
for(int i=0;i<str.length();i++)
if(str.charAt(i)=='.')
p=true;
if(str.length()<16 && str!="0" && sign=="null" && p==false)
{
str+=".";
}
else if((str=="0" || sign!="null")&& p==false)
{
str="0.";
}
number.setText(str);
}

public void pressadd()//對按+作出反應
{
sign="add";
num=Double.parseDouble(str);
change=true;
}

public void presssub()//對按-作出反應
{
sign="sub";
num=Double.parseDouble(str);
change=true;
}
public void pressmul()//對按*作出反應
{
sign="mul";
num=Double.parseDouble(str);
change=true;
}
public void pressdiv()//對按/作出反應
{
sign="div";
num=Double.parseDouble(str);
change=true;
}
public void presssin()//對按sin作出反應
{
if(str!="0." && str!="-0" && str!="-0." && str!="0")
{
sign="null";
num=Double.parseDouble(str);
num=Math.sin(num);
str=Double.toString(num);
if(str.length()>16)
str=str.substring(0,16);
num=0;
}
if(str=="0")
{
sign="null";
num=0;
}
number.setText(str);
}
public void presstan()//對按tan作出反應
{
if(str!="0." && str!="-0" && str!="-0."&& str!="0")
{
sign="null";
num=Double.parseDouble(str);
num=Math.tan(num);
str=Double.toString(num);
if(str.length()>16)
str=str.substring(0,16);
num=0;
}
number.setText(str);
}
public void presscos()//對按cos作出反應
{
if(str!="0." && str!="-0" && str!="-0.")
{
sign="null";
num=Double.parseDouble(str);
num=Math.cos(num);
str=Double.toString(num);
if(str.length()>16)
str=str.substring(0,16);
num=0;
}
number.setText(str);
}
public void pressans()//對按=作出反應
{
if(sign=="null")
number.setText(str);
else if(sign=="add")
{
num+=Double.parseDouble(str);
str=Double.toString(num);
number.setText(str);
}
else if(sign=="sub")
{
num-=Double.parseDouble(str);
str=Double.toString(num);
number.setText(str);
}
else if(sign=="mul")
{
num*=Double.parseDouble(str);
str=Double.toString(num);
number.setText(str);
}
else if(sign=="div")
{
if(num!=0)
{
num/=Double.parseDouble(str);
str=Double.toString(num);
number.setText(str);
}
else
{
str="0";
number.setText(str);
}
}
sign="null";
}
public void pressdel()//對按del作出反應
{
if(str.length()>1)
{
str=str.substring(0,str.length()-1);
number.setText(str);
}
else if(str.length()==1)
{
str="0";
number.setText(str);
}
}
}

最佳回答:


我運行了,可以出來呀。一個計算機 不過後天有問題:告:不能讀取 AppletViewer 的屬性文件: C:\Users\Administrator.hotjava\properties 使用默認值。 erliangban 12-24 10 這句話是什麼意思?我不懂,你能再解釋一下,方便的話可以截屏看一下嗎?

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved