[求助]菜鸟的问题,跪求帮助. 结果不就应该是very good!,no,please try again,Excellent,wrong.try once more,nice work,don't give up,keep up ths good work,no,keep trying这些话中的一句吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 懂你的意思了:在applet第一次加载并运行时,paint()方法会被调用,此时就会执行switch(d4){......}这段代码,得到的自然是这些话中的一句了 你可以在paint()方法中首先判断applet是不是第一次加载运行,也就是说paint()是不是第一次被调用,若不是第一次调用,才执行switch代码段 在类z(你这种类的命名法是不规范的)中加入boolean变量firstUse,在init()方法中将firstUse=true,paint()方法:if (!firstUse){ switch(d4){ …… } firstUse = false;} import java.awt.*;import java.awt.event.*;import javax.swing.*;public class z extends JApplet implements ActionListener{ JLabel l,l1,l2; JTextField t,t1,t2; int a; int d1=1+(int)(Math.random()*10); int d2=1+(int)(Math.random()*10); boolean firstUse; public void init() { firstUse=true; Container c=getContentPane(); c.setLayout(new FlowLayout()); l=new JLabel("result"); c.add(l); t=new JTextField(10); t.addActionListener(this); c.add(t); l1=new JLabel("how much "); c.add(l1); t1=new JTextField(10); t1.setEditable(false); t1.setText(Integer.toString(d1)); c.add(t1); l2=new JLabel("times"); c.add(l2); t2=new JTextField(10); t2.setEditable(false); t2.setText(Integer.toString(d2)); c.add(t2); } public void actionPerformed(ActionEvent e) { int x=Integer.parseInt(e.getActionCommand()); a=x; } public int Abcd() { int d3,z,x; z=Integer.parseInt(t1.getText()); x=Integer.parseInt(t2.getText()); d3=z*x; return d3; } public void paint(Graphics g) { int d4=1+(int)(Math.random()*4); if (!firstUse) { switch(d4) {case 1: if(a==Abcd()) showStatus("very good!"); else showStatus("no,please try again."); break; case 2: if(a==Abcd()) showStatus("Excellent"); else showStatus("wrong.try once more."); break; case 3: if(a==Abcd()) showStatus("nice work!"); else showStatus("don't give up!"); break; case 4: if(a==Abcd()) showStatus("keep up ths good work!"); else showStatus("no,keep trying."); break; } firstUse = false; } }} 那就将现在写在paint()方法里的动作不要写在paint()里了,另外写成个方法,在actionPerformed()中调用,试试 jiangnanyuzi(江南愚子)兄的我试了,没用,请高手们再帮我看看 我用java做了一个来回移动的三角形,但是调试不知道错在哪里 编译也没有错误 关于Mina如何传输大文件和利用协议传输的问题 java发送带附件的邮件,为何邮箱内容直接显示的附件里面的内容?。 swing table 表格分析 java多态 写了个全角半角混在时按字节取substring的函数,大家帮着看看 关于 严重: Error listenerStart错误(JAVA连ORACLE数据库) 请帮忙解释下java中实现 Post方法 Java打包问题,请高手帮忙解决: JBuilder 2005 [求助]菜鸟的问题 [求助]这程序是怎么了?!!!!
if (!firstUse){
switch(d4){
……
}
firstUse = false;
}
import java.awt.event.*;
import javax.swing.*;
public class z extends JApplet implements ActionListener
{ JLabel l,l1,l2;
JTextField t,t1,t2;
int a;
int d1=1+(int)(Math.random()*10);
int d2=1+(int)(Math.random()*10);
boolean firstUse;
public void init()
{ firstUse=true;
Container c=getContentPane();
c.setLayout(new FlowLayout());
l=new JLabel("result");
c.add(l);
t=new JTextField(10);
t.addActionListener(this);
c.add(t);
l1=new JLabel("how much ");
c.add(l1);
t1=new JTextField(10);
t1.setEditable(false);
t1.setText(Integer.toString(d1));
c.add(t1);
l2=new JLabel("times");
c.add(l2);
t2=new JTextField(10);
t2.setEditable(false);
t2.setText(Integer.toString(d2));
c.add(t2);
}
public void actionPerformed(ActionEvent e)
{ int x=Integer.parseInt(e.getActionCommand());
a=x;
}
public int Abcd()
{ int d3,z,x;
z=Integer.parseInt(t1.getText());
x=Integer.parseInt(t2.getText());
d3=z*x;
return d3;
}
public void paint(Graphics g)
{ int d4=1+(int)(Math.random()*4);
if (!firstUse)
{
switch(d4)
{case 1:
if(a==Abcd())
showStatus("very good!");
else
showStatus("no,please try again.");
break;
case 2:
if(a==Abcd())
showStatus("Excellent");
else
showStatus("wrong.try once more.");
break;
case 3:
if(a==Abcd())
showStatus("nice work!");
else
showStatus("don't give up!");
break;
case 4:
if(a==Abcd())
showStatus("keep up ths good work!");
else
showStatus("no,keep trying.");
break;
}
firstUse = false;
}
}
}