请大家帮我看看这个java程序哪里出错了?

2024-11-25 21:32:35
推荐回答(5个)
回答1:

这样基本可以:
import java.awt.*;
import java.applet.*;
import java.net.*;
import java.awt.event.*;

import javax.swing.JOptionPane;

public class Lucky52 extends Applet implements ActionListener
{
Panel pNorth=new Panel();
PicPanel pCenter=new PicPanel();
Panel pBottom=new Panel();
TextField txField=new TextField(10);
Label label=new Label("请输入你对商品价格的估计:");
private int nprice=1100;
public Lucky52()
{
super();
this.setLayout(new BorderLayout());
pNorth.add(label);
pCenter.add(txField);
add(pNorth,BorderLayout.NORTH);
add(pCenter,BorderLayout.CENTER);
Button btStart=new Button("开始游戏");
Button btOK=new Button("确定");
Button btCancel=new Button("取消");
btStart.setActionCommand("start");
btStart.addActionListener(this);
btOK.setActionCommand("OK");
btOK.addActionListener(this);
btCancel.setActionCommand("cancel");
btCancel.addActionListener(this);
pBottom.add(btStart);
pBottom.add(btOK);
pBottom.add(btCancel);
add(pBottom,BorderLayout.SOUTH);
setBackground(Color.white);
txField.setEnabled(false);
}
public String compareprice(int guessprice)
{
if(guessprice==nprice)
{ txField.setEnabled(false);
return"你猜对拿弯陵闹段了,恭喜你!消戚";
}
else if(guessprice>nprice)
{
return"你猜的价格过高,请重猜!";
}
else if(guessprice {
return"你猜的价格过低,请加价!" ;
}
return"出错了!";

}
public void actionPerformed(ActionEvent arg0) {
String comm=arg0.getActionCommand();
if(comm.equals("start"))
{
txField.setEnabled(true);
label.setText("请输入你对商品价格的估计:");

pCenter.initImg();
pCenter.repaint();
}
else if(comm.equals("OK"))
{
int guessprice=0;
try
{
guessprice=Integer.parseInt(txField.getText().trim());
String guess=compareprice(guessprice);
JOptionPane.showConfirmDialog(null,
guess);
}
catch(Exception e)
{
e.printStackTrace();
}
}

else if(comm.equals("cancel"))
{
txField.setText("");
System.exit(0);
}

}
}

class PicPanel extends Panel
{
String fileName="N3310.gif";
Image m_img;

public void initImg()
{
URL url=null;
try
{
url=Class.forName("Lucky").getResource("N3310.gif");
}
catch(Exception e)
{
}
m_img=getToolkit().getImage(url);
MediaTracker mt=new MediaTracker(this);
mt.addImage(m_img,1);
try
{
mt.wait();
mt.checkAll();
}
catch(Exception e)
{
}
}
public void paint(Graphics g)
{
g.drawImage(m_img,125,0,50,160,this);
}
}

class MsgDlg extends Frame implements ActionListener
{
Label label=new Label();

public MsgDlg(String strMsg)
{
super();
setTitle("猜的结果");
Panel p=new Panel();
add(p);
p.add(label);
label.setText(strMsg);
setSize(150,100);
setLocation(300,200);
Button btOK=new Button("确定");
btOK.addActionListener(this);
p.add(btOK);
show();
}

public void actionperformed(ActionEvent evt)
{
this.dispose();
}

public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub

}
}

回答2:

1. 类名一个首字母神嫌迹要大写,public class t7, 一般是T7, 首字母大写好游并一点,小写也不会报错误,可以改,也可以不改
2。 for(int j=1;j>12-2i;j++)//控制空格 没有12-2i 这要的表达式,2i这个,是2*i吗?
3. for(int k=1;k<2i-1;k++) //同上面2
4。 System.out.print(cs[i-1]+" "); //cs[] 这里并没有定义cs数组,是zimu[]吧
5. 上面都是语法者清上的问题,还就是逻辑方面

回答3:

我说兄弟啊,你最起码也把错误提示发出来吧,这么多代码让人一行行读得死人啊

回答4:

构造函数名字问题

回答5:

PicPanel pCenter=new PicPanel(); 初始化的()没有