小弟是一个Java初学者,我现在有一个疑问,如果要在浏览器中运行applet小程序,浏览器应该如何设置?
到目前为止,我已经在三台电脑,三个浏览器中尝试运行一个applet小程序,但没有一次成功
先来看我所要运行的程序吧:
文件名:UseImage.javaimport java.awt.*;
import java.applet.Applet;
import java.net.*;public class UseImage extends Applet
{
Image testImage; public void init()
{
testImage = getImage(getDocumentBase(), "indwx_01.gif");
} public void paint(Graphics g)
{
g.drawImage(testImage, 0, 0, this);
}
}
编译后得到UseImage.class
文件名:UseImage.html<html>
 <body>
  <applet code = "UseImage.class" height = 200 width = 300>
  </applet>
 </body>
</html>
图片名:index_01.gif然后把这四个文件都放在同一个文件夹下面,e:\test然后运行UseImage.html,出现的结果如下
接着我在CSDN上问了一遍原因,有人说是浏览器设置的问题,所以在这里我想请教各位已经精通Java的高手们,你们之前遇到这个问题是如何解决的,能否把解决方法告诉小弟一下。千万不要告诉我你们什么都没做就能运行applet,我都在三台电脑,三个浏览器上都试过了,说明没有设置过的电脑肯定是无法运行applet的。还有就是,我的电脑上现在只装了jdk1.6,是不是还缺少什么组件。比如我用firefox打开这个网页的时候,它就提示我缺少组件,好象是java runtime envirement什么的,但我安装了之后总是提示安装失败。

解决方案 »

  1.   

    不好意思,楼主,没学过applet,只学过servlet
      

  2.   

    想画图片的applet要implements ImageObserver接口
    只画几何形状的和字符串的则不用
      

  3.   

    查看最简单的方式用
    appletviewer UserImage.html
    如果想在html显示效果,可能需要通过OBJECT的方式来实现,具体google或者百度
      

  4.   

    装了JDK应该也自动的装了JRE的 g.drawImage("Hello World!", 0, 0, this);
    把现实图片的先去掉试试
      

  5.   

    你说的很对,如果只是输出文字什么的的确是可以的,但是一定要用到这个接口吗,为什么我的上一张帖子中有人没有用接口也能出图片呢?不信大家可以看看下面帖子的13楼,http://topic.csdn.net/u/20100817/09/382e2a75-916f-4ee4-9c25-217910552dc0.html?75670还有就是现在我装好了jre,是从天空软件站找来的,顺楼上的意思在命令行下面输入:appletviewer UseImage.html,但是有一个警告:警告:不能读取 AppletViewer 的属性文件: C:\Documents and Settings\user\.hotjava\properties 使用默认值。然后弹出的小程序查看器中什么都没有,效果如下:再一次打开UseImage.html,结果弹出一个东西
    但是这东西我等了很长时间它都没有一点反应,无奈我只好点取消,最后网页还是和原先一样,根本就没有变化,还是一片空白看来只能用4楼大哥的方法了,那么谁能帮帮忙修改一下源代码,使用一下implements ImageObserver,我想参考一下,以免跟着书本一错再错
      

  6.   

    对了,我想弱弱的问一下,是不是现在applet技术已经被淘汰了,我现在看的书是03年的书,估计applet在当时可能很流行,现在已经被淘汰了,不知道我说的对不对,否则现在的浏览器怎么都不支持applet了呢?看来做一个学生项目也不容易啊,什么都不懂,现在学到的还是过时的不被支持的东西,真是悲剧啊!
      

  7.   


    public class SwingTest extends Applet implements ImageObserver{

    private static final long serialVersionUID = 1L;
    Image testImage; public void start(){
         repaint();
        }
        
        public void paint(Graphics g)
        {
         testImage = getImage(getDocumentBase(), "1.jpg");
            g.drawImage(testImage, 0, 0,100,100, this);
        }}火狐下也很正常,如果不正常应该是浏览器安全设置的问题了
      

  8.   

    g.drawString("Hello World!", 10, 10,);
    如果单单是测试文字的话 及游览器问题的话 试试这个import java.awt.*;
    import java.applet.Applet;
    public class aa extends Applet
    {
       
        public void paint(Graphics g)
        {
            g.drawString("sdfs", 19, 23);
        }
    }
      

  9.   

    g.drawString("Hello World!", 10, 10,);
    如果单单是测试文字的话 及游览器问题的话 试试这个import java.awt.*;
    import java.applet.Applet;
    public class aa extends Applet
    {
       
        public void paint(Graphics g)
        {
            g.drawString("sdfs", 19, 23);
        }
    }
      

  10.   

    不好意思 我可以运行(完全copy你的代码)
    唯一改下你的html文件代码如下:(height width改了下, 不过有点晕地是,设置得很小我也可以看得到那部分图片)
    <html>
     <body>
      <applet code = "UseImage.class" height = 650 width = 850>
      </applet>
     </body>
    </html>
    这个是200*300的 <a href="http://tinypic.com?ref=9r5af9" target="_blank"><img src="http://i38.tinypic.com/9r5af9.jpg" border="0" alt="Image and video hosting by TinyPic"></a>
    这个是650*850的<a href="http://tinypic.com?ref=swpkzc" target="_blank"><img src="http://i34.tinypic.com/swpkzc.jpg" border="0" alt="Image and video hosting by TinyPic"></a>
      

  11.   

    虽然不知道是怎么回事,但是今天我换了一张小一点的图片来代替index_01.gif,结果奇迹出现了,网页中终于可以显示图片了,会不会显示图片和图片本身的大小有关呢?
    不过最后还是感谢各位的回帖,虽然没帮上什么忙,但是仍然感谢你们
      

  12.   

    我终于明白是哪里出错了,原来在画图中直接保存为1.gif和保存为1选后缀为gif,两者生成的图中,前者不是gif图,只有后者才是