- - PR -
PHPで上書きした画像ファイルをJAVAアプレットに表示させたい。
| 投稿者 | 投稿内容 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-04-23 16:40
はじめまして。
よろしくお願いいたします。 ローカルにある画像ファイルをJAVAアプレットで加工しようと考えています。 署名付きアプレットではなく、phpとhtmlのフォームを使ってローカルの画像ファイルを選択・アップロードしています。 phpによって、画像ファイル名を"0.jpg"等に固定し、アップする度に上書きしています。 画像ファイルのアップロード・上書きが完了するとphpのページにジャンプし、その中のアプレットに画像が表示されます。 ここまでは問題ないのですが、ローカル画像のアップをやり直し、画像ファイルが上書きされる度にアプレット内の画像表示も変えたいと考えています。 これがうまくいきません。 ブラウザを完全に終了させて、再度アプレットを起動させると上書きした画像は問題なく表示されますが、ブラウザの切り替えだけでは最初にアップした画像が表示されたままの状態です。 今はinit()内で URL url = new URL(getCodeBase(), "0.jpg"); Image image = Toolkit.getDefaultToolkit().getImage(url); このように記述した後、 paintメソッド内で g.drawImage(image, 0, 0, this); と、しています。 getImage()に問題があるのでしょうか。 このメソッドで一度読み込んだ画像は、アプレットを終了させるまで残るのでしょうか。 そうだとしたら、アプレット内に読み込んだ画像を表示するのではなく、常にサーバにある"0.jpg"をロードして表示させるにはどのようにしたらいいでしょうか。 ご教授ください。 皆様よろしくお願いいたします。 | ||||||||
|
投稿日時: 2004-04-23 16:55
Java Plug-in のキャッシュを無効にするとどうなりますか?
| ||||||||
|
投稿日時: 2004-04-23 17:31
でゅうくさん、ありがとうございます。 早速試してみました。 残念ながら、最初にアップした画像が表示されてしまいます。 やはりgetImage()に問題があるのでしょうか。 よろしくお願いいたします。 | ||||||||
|
投稿日時: 2004-04-23 18:09
はずしてるかもしれませんが、
これをinit()からstart()に移してみてはどうでしょうか? | ||||||||
|
投稿日時: 2004-04-23 18:33
Wataさん、ありがとうございます。 start()に移してみました。 アプレットを起動させる度に新しい画像をロードするにはやはりstart()かな? と思ったのですが、変化ありませんでした。 よろしくお願いいたします。 | ||||||||
|
投稿日時: 2004-04-26 09:01
出来ました!
getImage()に変えてImageI/Oクラスの read(URL url)を使ったところ、アプレットを起動させる度に、 画像ファイルのロードが出来ました。 でゅうくさん Wataさん ご回答いただきましてありがとうございました。 これからもよろしくお願いいたします。 | ||||||||
|
投稿日時: 2004-04-26 10:02
おおっ 確かに画像がリロードされなくて、解決策は結局わからずじまいでしたので。 | ||||||||
|
投稿日時: 2004-04-26 11:16
Wataさんありがとうございます。 私は普段iアプリをメインに制作しています。 たまたま依頼を受け、初めてアプレットに挑戦してみましたが、 今回の画像ファイルのリロードにはかなり苦労させられました Web上を色々探し回った結果、辿り着いたのが以下のページです。 「画像ファイルのロードの比較」をされていて、大変参考になりました。 http://www5.airnet.ne.jp/sakuraba/java/laboratory/graphics/ImageLoading/ImageLoading.html 今後ともよろしくお願いいたします。 | ||||||||
