1

JDK AppletViewer でプレイすることを意図した Java アプレットを使用するゲームに取り組んでいますが、問題が発生しました。アプレットの下部にあるステータス バー (「アプレットを開始しました」と表示されている茶色がかったバー) は、上でプレイしているゲームでは見栄えがよくありません。からの推奨事項: http://www.coderanch.com/t/256541/Applets/java/JFrame-applet 許可「showWindowWithoutWarningBanner」を追加しました。ただし、これをセキュリティ ポリシーに追加すると、次のようになります。permission java.awt.AWTPermission "showWindowWithoutWarningBanner";

そのため、アプレットを開きますが、ステータス バーはまだそこにあります。同じポリシー ファイルを使用して読み書きできるため、セキュリティ ポリシー ファイルが使用されていることが確認できます。

2回目の試行で、ステータスをnullに設定しsetStatus(null);てジョブが終了するかどうかを確認しようとしましたが、「アプレット開始」テキストが削除されただけで、茶色がかったステータスバーがまだ残っています. 私が何か間違ったことをしている場合、または次のステップがある場合、何かアイデアはありますか?

4

2 に答える 2

1

..Java アプレットに対する多くの嫌悪感、特定の理由は..?

  • アプレットは、アプリケーションよりも開発と展開が困難です。隔週で、一部のブラウザの一部のバリアントに新しいアプレットのバグが発生するため、ブラウザを除外する価値があります。
  • アプレットは Web ページのゲストですが、現実的には、Web ページ ラッパーは実際にアプレットにどのような影響を与えるのでしょうか? アプリはあったほうがいいです。ユーザーが選択した任意の位置でデスクトップ上に自由に浮かび、ブラウザが閉じられても存続します。
  • Web ページのアプレットは HTML で特定のサイズに設定されますが、フリー フローティング フレームは理想的に必要なサイズに設定できます。アプレットは JS を介してのみサイズ変更できますが、フレームは必要に応じてサイズ変更可能または不可にすることができます。
  • ...

本当にこれはあなたが尋ねるべき別の質問です。次に、この回答をそれに移動します。

于 2012-10-09T00:12:54.727 に答える
1

アプレットを使用する代わりに (あなたのケースでは正当な理由はまったくありません)、Swing を使用してください。

たとえば、次の基本的なスケルトンを使用して作業を開始できます。

フレーム:

public class App extends JFrame {

    public App() {
        super("Title");
        add(new AppPanel());
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setLocationByPlatform(true);
        pack();
    }    

}

パネル:

public class AppPanel extends JPanel {

    @Override
    public void paintComponent(Graphics g) {
        // Perform your painting here
    }    

}

また、次のように EDT でこれを初期化してください。

SwingUtilities.invokeLater(new Runnable() {

    public void run() {
        new App().setVisible(true);
    }   

});
于 2012-10-08T01:03:14.640 に答える