import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;public class ListPrime extends Applet
{
Label prompt;
TextField L_input,U_input;
int LowerLimit,UpperLimit; public void init()
{
prompt=new Label("Enter the lower and upper limit:");
L_input=new TextField(4);
U_input=new TextField(4);
add(prompt);
add(L_input);
add(U_input);
} public void paint(Graphics g)
{
int i,j,k=0,p=0; FirstLoop:
for(i=LowerLimit;i<=UpperLimit;i++)
{
if(i%2==0)
continue FirstLoop;
j=3;
while(j<=Math.sqrt(i))
{
if(i%j==0)
continue FirstLoop;
j+=2;
}
g.drawString(Integer.toString(i),20+k*20,50+p*20);
if(k>10)
{
p++;k=0;
}
else k++;
}
} void actionPerformed(ActionEvent e) 
  {
int temp;
if(e.target==U_input)
{
LowerLimit=Integer.parseInt(L_input.getText());
UpperLimit=Integer.parseInt(U_input.getText());
if(LowerLimit>UpperLimit)
{
temp=LowerLimit;
LowerLimit=UpperLimit;
UpperLimit=temp;
}
repaint();
}
}
}

解决方案 »

  1.   

    你的有错误
    if(e.target==U_input)
      

  2.   

    import java.applet.Applet;
    import java.awt.*;
    import java.awt.event.*;public class ListPrime extends Applet
    {
    Label prompt;
    TextField L_input,U_input;
    int LowerLimit,UpperLimit; public void init()
    {
    prompt=new Label("Enter the lower and upper limit:");
    L_input=new TextField(4);
    U_input=new TextField(4);
    add(prompt);
    add(L_input);
    add(U_input);
    } public void paint(Graphics g)
    {
    int i,j,k=0,p=0; FirstLoop:
    for(i=LowerLimit;i<=UpperLimit;i++)
    {
    if(i%2==0)
    continue FirstLoop;
    j=3;
    while(j<=Math.sqrt(i))
    {
    if(i%j==0)
    continue FirstLoop;
    j+=2;
    }
    g.drawString(Integer.toString(i),20+k*20,50+p*20);
    if(k>10)
    {
    p++;k=0;
    }
    else k++;
    }
    } void actionPerformed(Event e) 
      {
    int temp;
    if(e.id==Event.ACTION_EVENT && e.target==U_input)
    {
    LowerLimit=Integer.parseInt(L_input.getText());
    UpperLimit=Integer.parseInt(U_input.getText());
    if(LowerLimit>UpperLimit)
    {
    temp=LowerLimit;
    LowerLimit=UpperLimit;
    UpperLimit=temp;
    }
    repaint();
    }
    }
    }
      

  3.   

    改了两处.void actionPerformed(Event e) if(e.id==Event.ACTION_EVENT && e.target==U_input)
      

  4.   

    可以编译通过了,但是在浏览器上显示不出来,唉不过分还是给你吧john_sheep虽然我不知道你怎么改的,有空帮我看看为什么显示不出来?<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
     <HEAD>
      <TITLE> New Document </TITLE>
      
     </HEAD> <BODY>
     <hr>
     <applet code=ListPrime
     width=300
     height=200>
      </applet>
     </BODY>
    </HTML>
      

  5.   

    运行了john_sheep(彩虹勇士)的程序,确实什么反应都没有.
      

  6.   

    import java.applet.Applet;
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.event.ActionListener;public class ListPrime
        extends Applet {
        Label prompt;
        TextField L_input, U_input;
        int LowerLimit, UpperLimit;    public void init() {
            prompt = new Label("Enter the lower and upper limit:");
            L_input = new TextField(4);
            U_input = new TextField(4);
            U_input.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                    int temp;
                        LowerLimit = Integer.parseInt(L_input.getText());
                        UpperLimit = Integer.parseInt(U_input.getText());
                        if (LowerLimit > UpperLimit) {
                            temp = LowerLimit;
                            LowerLimit = UpperLimit;
                            UpperLimit = temp;
                        }
                        repaint();
                    }                    });
            add(prompt);
            add(L_input);
            add(U_input);
        }    public void paint(Graphics g) {
            int i, j, k = 0, p = 0;        FirstLoop:
                for (i = LowerLimit; i <= UpperLimit; i++) {
                if (i % 2 == 0) {
                    continue FirstLoop;
                }
                j = 3;
                while (j <= Math.sqrt(i)) {
                    if (i % j == 0) {
                        continue FirstLoop;
                    }
                    j += 2;
                }
                g.drawString(Integer.toString(i), 20 + k * 40, 50 + p * 40);
                if (k > 10) {
                    p++;
                    k = 0;
                }
                else {
                    k++;
                }
            }
        }}