5

私のJavaアプレットが何も表示しない理由を誰か知っていますか?

これは私の最初の Java アプレットなので、作成するのは初めてです。この問題を調査しましたが、現在の問題に固有の回答は見つかりませんでした。

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 );
}
}

コマンド モジュールで使用するか、html ページで使用するかは問題ではありません。

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

Java プログラムのコンパイル時にエラーは発生しないので、なぜ動作しないのか少し混乱しています。

また、Java SE 6 で OSX 10.8.2 Mountain Lion を実行している MacBook Pro を使用しています。

4

5 に答える 5

2

アプレットとHTMLページの両方が正しいように見えるため、問題はサーバー側の設定ミス、またはブラウザのJavaプラグインのステータスが原因である可能性があります。完全に診断するには、あなたの状況についてもっと知る必要があります。[1.7.0.11プラグインを使用してGoogleChromeでこれをテストしましたが、期待どおりに機能しました]

サーバー側で、クラスファイルとHTMLファイルがサーバー上の同じ場所(または、そのようにロードしている場合はローカルディレクトリ)にデプロイされていることを確認します。

さらに、使用しているブラウザにJavaがインストールされていないか、互換性のないバージョンのJavaがインストールされている可能性があります。これは私が次にチェックすることです。一般的な問題には、1.7 APIに対してアプレットをコンパイルすることも含まれますが、古いJavaプラグインを使用してアプレットをブラウザにロードしようとします。

于 2013-01-15T22:09:52.443 に答える
2

これは、この作業コードのスクリーンショットです。指定されたアプレットの高さからの短縮を除きます。

JavaRocksApplet

したがって、ニートがコメントで指摘したように。「ここでうまくいきます。」

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 );
    }
}

コンソールを表示すると、問題の実際の原因の詳細を確認できる可能性があります。Java コンソールを有効にして表示するにはどうすればよいですか? を参照してください。

于 2013-01-15T22:35:59.180 に答える
1

通常、init()メソッドを定義し、その中にいくつかのGUIコンポーネントを追加して初期化します。paint()をオーバーライドしません。それが正確に何をするのかわかりません。

于 2013-01-15T22:09:42.117 に答える
0

これをコードの前の行に入れてくださいpaint

super.paint(screen);
于 2013-01-15T22:10:12.427 に答える
0

アプレットにも同じ問題がありました。コメントを追加

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

JavaRocksApplet で私のために働いた。

于 2016-06-04T13:47:41.503 に答える