C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: イメージファイルのファイル名を取得したい


(過去ログ 134 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■79026 / inTopicNo.1)  イメージファイルのファイル名を取得したい
  
□投稿者/ いろは (1回)-(2016/03/02(Wed) 23:26:41)

分類:[Java] 

今晩は。

ラベルに貼り付けたiCON(イメージファイル)のファイル名を取得する
方法を教えて下さい。

色々なコマンドを試してみましたが、オブジェクト名で
表示されてしまいます。

ジグソーパズルとかポーカーゲームとかを考えていますが、
どうしても最初に貼り付けたイメージファイルのファイル名が
取得出来ません。
宜しくお願いします。

=====================================================

image=getToolkit().getImage("xxxx.拡張子");
JLabel jlabel=new JLabel();
add(jlabel);
Icon icon=new ImageIcon(image);
jlabel.setIcon(icon);

=====================================================
 

引用返信 編集キー/
■79030 / inTopicNo.2)  Re[1]: イメージファイルのファイル名を取得したい
□投稿者/ ぶなっぷ (76回)-(2016/03/03(Thu) 09:38:54)
2016/03/03(Thu) 09:41:00 編集(投稿者)
きちんと確認したわけではありませんが、
普通に考えて、

> image=getToolkit().getImage("xxxx.拡張子");
として、次の行へ移ったら、
もう誰もファイル名("xxxx.拡張子")は覚えてないんじゃないでしょうか?

イメージの実体はバイナリデータであり、ファイルではないからです。
たとえば、
画面キャプチャした結果をImageクラスに格納するなら、途中にファイルなんて
どこにも出てこないでしょ。

あくまで、画像データはバイナリデータでしかない、画像ファイルは、画像デ
ータを(時には圧縮加工などして)ファイルに保存しただけのもの。

だから、ファイル名とイメージを関連づけして記憶したかったら、
自分でそういうコードを書いて覚えておくしかないと思います。

引用返信 編集キー/
■79041 / inTopicNo.3)  Re[2]: イメージファイルのファイル名を取得したい
□投稿者/ いろは (2回)-(2016/03/03(Thu) 14:42:28)
#ぶなっぷさん、回答有り難う御座います。

Textの場合だと、
=====================================================

JLabel jlabel=new JLabel("ABC");
jlabel.(getText());

=====================================================
のコードでLabelからTextを取り出せるので、Imageも出来るはずと
考えたのですが。

出来ないのであれば、やはりプログラム側で考えるしかないのですが。

引用返信 編集キー/
■79042 / inTopicNo.4)  Re[3]: イメージファイルのファイル名を取得したい
□投稿者/ 魔界の仮面弁士 (660回)-(2016/03/03(Thu) 15:53:51)
No79041 (いろは さん) に返信
> 出来ないのであれば、やはりプログラム側で考えるしかないのですが。

プログラム側で自己管理する必要があると思いますよ。


インターネットからダウンロードしてきた画像ファイルの場合、
その画像自体には、「どの URL から入手したものなのか」
という情報は含まれていないですよね。


Image クラスの場合も同様で、そのインスタンスが
Toolkit.getImage(filePath) で得たものなのか、
Toolkit.createImage(byteArray) で得たものなのかは
保持されていないと思います。多分。
引用返信 編集キー/
■79050 / inTopicNo.5)  Re[4]: イメージファイルのファイル名を取得したい
□投稿者/ いろは (3回)-(2016/03/03(Thu) 21:04:40)
魔界の仮面弁士 さん、回答ありがとうございます。
>
> インターネットからダウンロードしてきた画像ファイルの場合、
> その画像自体には、「どの URL から入手したものなのか」
> という情報は含まれていないですよね。
>
> Image クラスの場合も同様で、そのインスタンスが
> Toolkit.getImage(filePath) で得たものなのか、
> Toolkit.createImage(byteArray) で得たものなのかは
> 保持されていないと思います。多分。

#私が考えたのは、ファイル名のわかっている画像ファイルで一度プログラム内に取り込み、
オブジェクト化された後に、再度元のファイル名を知りたいという内容の質問です。

画像をラベルに貼り付けた後、ラベルの並び順を変えた後に、再度画像情報を色々と使いまわし
したいとの考えです。

勿論ラベル情報をオブジェクトで取ってやればそこから画像情報をリンク付け出来るのですが、
ダイレクトに画像情報を知る方が、プログラムの書き方がシンプルになると思ったからです。
引用返信 編集キー/
■79067 / inTopicNo.6)  Re[5]: イメージファイルのファイル名を取得したい
□投稿者/ Azulean (608回)-(2016/03/04(Fri) 22:56:53)
No79050 (いろは さん) に返信
> #私が考えたのは、ファイル名のわかっている画像ファイルで一度プログラム内に取り込み、
> オブジェクト化された後に、再度元のファイル名を知りたいという内容の質問です。

すでに説明のあることの繰り返しですが、「画像ファイル」というクラスであればファイル名を持っていても不思議ではありませんが、「画像」というクラスなのでファイル名を持っていないと言うことになります。


> 勿論ラベル情報をオブジェクトで取ってやればそこから画像情報をリンク付け出来るのですが、
> ダイレクトに画像情報を知る方が、プログラムの書き方がシンプルになると思ったからです。

ゆえに、自分で「画像」と「ファイル名」の2つを持つ、「画像ファイル」クラスを作り出して、そのインスタンスを配列やリストで管理することになります。


// もちろん、「画像表示コントロール」に設定した画像と「ラベルコントロール」に設定したファイル名を扱うという実装手法もありますが、分けて管理しないと行けないという意味では扱いづらいかもしれませんね。
引用返信 編集キー/
■79074 / inTopicNo.7)  Re[6]: イメージファイルのファイル名を取得したい
□投稿者/ いろは (4回)-(2016/03/06(Sun) 00:19:20)
Azulean さん回答有難うございます。

> すでに説明のあることの繰り返しですが、「画像ファイル」というクラスであればファイル名を持っていても不思議ではありませんが、「画像」というクラスなのでファイル名を持っていないと言うことになります。

> ゆえに、自分で「画像」と「ファイル名」の2つを持つ、「画像ファイル」クラスを作り出して、そのインスタンスを配列やリストで管理することになります。

#やはり結論は、クラスがそのようなメソッドを持ってないので自分で作るしかないということですね。
有難うございました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -