• 締切
  • すぐに回答を!

javaでアプレットの描画が出来ない

  • 質問No.2927507
  • 閲覧数1210
  • ありがとう数0
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 33% (3/9)

ものすごく初心者な質問で申し訳ありません。
jdk-1.6.0をVine linux 3.2にインストールして使用しています。
javaのソースを書いてコンパイルするなどには問題は無いのですが
(今のところ)
以下のようなアプレットを試してみたところアプレットの窓は起動しますが
描画がされません。

import java.applet.Applet;
import java.awt.Graphics;
/*
<applet code="test" width=200 height=200>
</applet>
*/

public class test extends Applet {
public void paint(Graphics g) {
g.drawLine(10,10,180,110);
}
}

以上のコードを
%javac test.java
%appletviewer test.java
としました。窓は起動し、アプレットが開始された、と表示されるのですが
線が見当たりません。

(ちなみに教科書にあるサンプルなので間違いがあったとしたら写し間違いです)
線が表示されるはずなんですが、表示されないのです。
まども起動するので何かJAVAを使う環境として何か細かい設定を間違って
いるのかと思い質問しました。

分かる方がいらっしゃったら教えてください。

回答 (全4件)

  • 回答No.4

ベストアンサー率 56% (36/64)

#2です
先ほどの回答はeclipseでの確認でした。
hotjava.properties を下のリンクで探すといろいろ書いてあります
補足コメント
kuntaro33

お礼率 33% (3/9)

ページを少しだけ見てみました。
色々とエラーやバグの話が載っていて参考になりそうですね。
一度、時間をかけて自分と同じ境遇の人がいないかチェックしてみることに
します。
投稿日時:2007/04/17 23:38
  • 回答No.3

ベストアンサー率 56% (36/64)

#2です(Win:XP JDK1.6)で確かめてますが
「警告: AppletViewer プロパティファイルが読み込まれません: C:\Documents and Settings\hogehoge\.hotjava\properties デフォルトを使用します。」
とでます。(私もはじめて)これが表示されるのは最初だけで、
最初のViewer 起動時に C:\Documents and Settings\hogehoge\の下に
.appletviewer なるファイルが生成されています。
その中身は
------------------------1
http.proxyPort=80
package.restrict.access.sun=true
http.proxyHost=
-----------------------------1
です。意味はわかりません。2回目以降はこの生成されたファイルを読んでいるようでエラーになりません。
vineがないので推測ですが、viewer起動時に作成されるはずの
.appletviewer が権限がなく作成されない。(メッセージ出てもよさそうですが)
.appletviewer を権限がなく読めない。
などが考えられます。
アカウント近辺にそのようなファイルはありませんか?
あれば属性を確認してください。
ない場合はHomeディレクトリの下(かな?)に
.hotjavaディレクトリを作成し
その中にpropertiesファイルを作成してください。中身は 1で構わないかと。。。
それにしても「デフォルトを使用します。」って一文が非常に気になります。
補足コメント
kuntaro33

お礼率 33% (3/9)

詳細な検討をありがとうございます。
実は使っている教科書に、haragaさんの書いていらっしゃるエラーが
出るかもしれないが、そのまま続行しなさい、と書いてあります。
最初に書いていなくて申し訳ありません。

~/.hotjava/properties/.appletviewer

を作ってやり直してみましたが変化はありませんでした。
投稿日時:2007/04/17 23:36
  • 回答No.2

ベストアンサー率 56% (36/64)

import java.applet.*;
import java.awt.Graphics;
import java.awt.Color;

public class test extends Applet {
public void paint(Graphics g) {
g.setColor(Color.blue);
g.drawString("test!",50,50);
g.drawLine(10,10,180,110);
}
}
同じ環境にならないので(win、JDK1.4=古い!)回答にはなりませんが
1 これでテキストは表示されますか?
また、ビューワーではなく
<html>
<body>
<applet code=test.class width="200" height="200" >
</applet>
</body>
</html>
2 みたいなページをブラウザで表示してみたらどうなんでしょう。
3 以前に javacでコンパイルしたもの”test.class”を削除して、再コンパイルはどうでしょ?
4 余力あればeclipseの方が便利ですが・・・
補足コメント
kuntaro33

お礼率 33% (3/9)

お返事ありがとうございます。
ビューワで見る方法をまだ調べていませんで、試していませんが、
以下

1)テキスト表示⇒同様に出てこない

3)test.class削除⇒再コンパイル⇒同じ

4)エクリプス・・・。実はnetbeansでpaintメソッドをオーバーライドする、というプログラムもうまく走りません。バックグラウンドのみの表示になってしまいます・・・。
ということでテキストの簡単なプログラムで試してみよう、と始めた結果、
今回のように同様のことが起きるのです。

ビューワでみる方法を調べて試してみます。
投稿日時:2007/04/17 15:14
  • 回答No.1

ベストアンサー率 40% (157/390)

Color指定がないので、バックグラウンドとフォアグラウンドの色が一緒になっていて、
見えないだけでは?
import部に
import java.awt.Color;

ロジック部に
Color c = Color.Blue;
g.setColor(c);

を追加されてみては?
補足コメント
kuntaro33

お礼率 33% (3/9)

お返事ありがとうございます。
先ほど、カラーの設定をやってみたのですが、線は出てきませんでした。

単にコードの問題なのか、
インストールしたjavaの問題なのか、

今のところ全くわかりません。
同じような経験をお持ちの方はおられませんかねぇ・・・。
投稿日時:2007/04/17 11:32
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ