Java applet does not display anything

喜你入骨 提交于 2019-12-01 17:35:29

问题


Does anyone know why my Java applet does not display anything?

This is my first Java applet so I am new to creating one. I researched this problem and haven't found an answer specific to the current problem.

import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Font;
import java.awt.Color;

public class JavaRocksApplet extends Applet
{
public void paint( Graphics screen )
{
    Font f = new Font( "TimesRoman", Font.ITALIC, 36 );
    screen.setFont( f );
    Color c = new Color( 40, 80, 120 );
    screen.setColor( c );
    screen.drawString( "Java Rocks!!", 100, 60 );
}
}

It doesn't matter whether I use appletviewer in the command module or an html page.

<html>
<head>
<title>JavaRocksApplet</title>
</head>
<body>
    <applet code = "JavaRocksApplet.class" width = 400 height = 200> </applet>
</body>
</html>

There are no errors when compiling the Java program, so I am a little bit confused about why it doesn't work.

Also, I am using a MacBook Pro running OSX 10.8.2 Mountain Lion with Java SE 6


回答1:


Both the applet and the HTML page appear correct, so its likely the problem is a result of a misconfiguration on either the server end, or the status of the Java plugin for your browser. I'd need to know more about your situation to completely diagnose it. [I tested this in Google Chrome using the 1.7.0.11 plugin, and it worked as expected]

On the server end, make sure you have the class file and the HTML file deployed to the same location on the server (or a local directory if you are loading it that way)

In addition, it is possible that the browser you are using either does not have Java installed or has an incompatible version of Java. This is the next thing I would check. Common problems include compiling the applet with against the 1.7 API, but trying to load it into a browser with an older Java plugin.




回答2:


Here is a screenshot of this working code. Except shortened from the applet height specified.

So, as Neet noted in a comment. 'It works here.'

import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Font;
import java.awt.Color;

/*
<applet code = "JavaRocksApplet.class" width = 400 height = 200> </applet>
*/
public class JavaRocksApplet extends Applet
{
    public void paint( Graphics screen )
    {
        Font f = new Font( "TimesRoman", Font.ITALIC, 36 );
        screen.setFont( f );
        Color c = new Color( 40, 80, 120 );
        screen.setColor( c );
        screen.drawString( "Java Rocks!!", 100, 60 );
    }
}

Likely more details on the actual cause of the problem can be found by viewing the console. See How do I enable and view the Java Console?




回答3:


Typically, you define an init() method and add initialize some GUI components inside of it. I wouldn't override paint(). I'm not sure what exactly that would do.




回答4:


Put this into your code before any line in the paint

super.paint(screen);



回答5:


I had the same issue with my applet. Added comment

<applet code = "JavaRocksApplet.class" width = 400 height = 200> </applet>

in JavaRocksApplet worked for me.



来源:https://stackoverflow.com/questions/14347590/java-applet-does-not-display-anything

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!