暈倒
你編譯Applet出現什麽錯誤?

解决方案 »

  1.   

    编译Applet小程序需要在JCreator 中调用JDK自己的appletviewer 我的做法是在JCreator中
    自己定义一个user tool 然后把这样的代码写在applet程序中的下面是我以前写过的一个例子:/*<html><applet code=clock7am.class width=400 height=300>
    </applet></html>*/ //在java程序头包含这样的注释就可以在JCreator中用appletviewer运行
    import java.applet.Applet;
    import java.applet.AppletContext;
    import java.awt.*;
    import java.io.PrintStream;
    import java.net.MalformedURLException;
    import java.net.URL;
    import java.util.Date;public class clock7am extends Applet implements Runnable
    {    Thread scrollingmessage;
        Image offScreenImage;
        Graphics offScreen;
        Image im;
        int icount;
        String browserVer;
        String browserID;
        int hoursAdjust;    public void init()
        {
            try
            {
                browserID = System.getProperty("browser");
                browserVer = System.getProperty("browser.version");
            }
            catch(SecurityException _ex)
            {
                browserID = new String("unknown");
                browserVer = browserID;
            }
            if(browserVer.indexOf("4.") >= 0)
            {
                Date date = new Date();
                hoursAdjust = (date.getTimezoneOffset() + 2) / 60 + 8;
                //System.out.println(date.toString());
                //System.out.println(hoursAdjust);
            } else
            {
                hoursAdjust = 0;
            }
            try
            {
                offScreenImage = createImage(90, 75);
                offScreen = offScreenImage.getGraphics();
            }
            catch(Exception _ex)
            {
                offScreen = null;
            }
            im = getImage(getCodeBase(), "clock641.gif");
        }    public void start()
        {
            scrollingmessage = new Thread(this);
            scrollingmessage.start();
        }    public void stop()
        {
            scrollingmessage.stop();
        }    public static int vectorX(int i, int j)
        {
            int k = (i + 270) % 360;
            int l = (int)((double)j * Math.cos((double)k * 0.017453300000000001D));
            return l;
        }    public static int vectorY(int i, int j)
        {
            int k = (i + 270) % 360;
            int l = (int)((double)j * Math.sin((double)k * 0.017453300000000001D));
            return l;
        }    public void run()
        {
            Thread.currentThread().setPriority(5);
            do
            {
                System.currentTimeMillis();
                try
                {
                    Thread.sleep(1000L);
                }
                catch(InterruptedException _ex) { }
                repaint();
            } while(true);
        }    public void paint(Graphics g)
        {
            update(g);
        }    public synchronized void update(Graphics g)
        {
            if(offScreen != null)
            {
                paintApplet(offScreen);
                g.drawImage(offScreenImage, 0, 0, this);
                return;
            } else
            {
                paintApplet(g);
                return;
            }
        }    public void paintApplet(Graphics g)
        {
            g.setColor(new Color(255, 255, 255));
            g.fillRect(0, 0, 63, 74);
            g.drawImage(im, 0, 0, this);
            Date date = new Date();
            int i = date.getMinutes();
            int j = i * 6;
            System.out.println("Hours = " + date.getHours());
            int k = (date.getHours() + hoursAdjust) % 24;
           /* if(k > 12)
            {
                k -= 12;
            }*/
            new Integer(k);
            int l = k * 30 + (i / 12) * 6;
            g.setColor(new Color(0, 0, 0));
            int i1 = vectorX(l, 18);
            int j1 = vectorY(l, 18);
            g.setColor(new Color(192, 192, 255));
            g.drawLine(29, 27, 30 + i1, 29 + j1);
            g.setColor(new Color(0, 0, 255));
            g.drawLine(30, 28, 30 + i1, 29 + j1);
            g.setColor(new Color(0, 0, 64));
            g.drawLine(31, 29, 30 + i1, 29 + j1);
            i1 = vectorX(j, 25);
            j1 = vectorY(j, 25);
            g.setColor(new Color(192, 192, 255));
            g.drawLine(29, 27, 30 + i1, 29 + j1);
            g.setColor(new Color(0, 0, 255));
            g.drawLine(30, 28, 30 + i1, 29 + j1);
            g.setColor(new Color(0, 0, 64));
            g.drawLine(31, 29, 30 + i1, 29 + j1);
            int k1 = date.getSeconds() * 6;
            i1 = vectorX(k1, 25);
            j1 = vectorY(k1, 25);
            g.setColor(new Color(128, 0, 0));
            g.drawLine(31 - i1 / 3, 29 - j1 / 3, 30 + i1, 29 + j1);
            g.setColor(new Color(255, 192, 192));
            g.drawLine(29 - i1 / 3, 27 - j1 / 3, 30 + i1, 29 + j1);
            g.setColor(new Color(255, 0, 0));
            g.drawLine(30 - i1 / 3, 28 - j1 / 3, 30 + i1, 29 + j1);
            g.drawOval(29, 27, 2, 2);
            g.drawOval(28, 26, 4, 4);
            g.setFont(new Font("Helvetica", 1, 14));
            String s = new String();
            s = k + ":" + date.toString().substring(14, 19);
            g.setColor(new Color(64, 0, 0));
            g.drawString(s, 6, 66);
            g.setColor(new Color(255, 0, 0));
            g.drawString(s, 5, 65);
        }    public boolean mouseUp(Event event, int i, int j)
        {
            URL url = null;
            String s = "http://www.7am.com/clock.htm";
            try
            {
                url = new URL(s);
            }
            catch(MalformedURLException _ex)
            {
                return true;
            }
            if(url != null)
            {
                getAppletContext().showDocument(url);
            }
            return true;
        }    public boolean mouseMove(Event event, int i, int j)
        {
            showStatus("Go to 7am News");
            return true;
        }    public String getAppletInfo()
        {
            return "The 7am Clock Applet v2.10\n Copyright to Bruce Simpson (1996,97) - http://www.7" +
    "am.com"
    ;
        }    public String[][] getParameterInfo()
        {
            String as[][] = {
                {
                    "", "", "The 7am Clock - no params"
                }
            };
            return as;
        }    public clock7am()
        {
        }
    }
      

  2.   

    在Build菜單中有Compile project、Compile File
    你可以選擇Compile file 進行編譯,在Build菜單中Execute File運行你所編譯的程序
      

  3.   

    执行applet时要选择在.htm文件下执行才能运行
      

  4.   

    设定好Configure/Options/JDK Profiles 应该就没问题了。
    你在创建project时,要选择Applet就可以用F7编译,F5运行了。
      

  5.   

    http://expert.csdn.net/Expert/TopicView1.asp?id=2940187