DOBON.NET DOBON.NETプログラミング掲示板過去ログ

PictureBoxで表示している画像の判定

環境/言語:[環境XP 使用言語VB.NET]
分類:[.NET]

Timerでランダムに画像をPictureBoxに表示させて
画像ごとに条件を設定したいのですが
下記のようにすると


PictureBox.imege=imge.Fromfile(ファイル名)

演算子=は型system.drawingおよびsystem.drawing.imageに対して定義されてませんと出ます。

どうしたら表示している画像を判定してくれるか教えてください
■No23687に返信(kei03さんの記事)
> Timerでランダムに画像をPictureBoxに表示させて
> 画像ごとに条件を設定したいのですが
> 下記のようにすると
>
>
> PictureBox.imege=imge.Fromfile(ファイル名)
>
> 演算子=は型system.drawingおよびsystem.drawing.imageに対して定義されてませんと出ます。
>
> どうしたら表示している画像を判定してくれるか教えてください
>
>
Is演算子かEqualsメソッド使われたらどうでしょう??
>>PictureBox.imege=imge.Fromfile(ファイル名)
>>
>>演算子=は型system.drawingおよびsystem.drawing.imageに対して定義されてませんと出ます。
>>どうしたら表示している画像を判定してくれるか教えてください
>>
> Is演算子かEqualsメソッド使われたらどうでしょう??
だめです。
PictureBox.Imageが持つ参照と、Image.FromFileが返す参照は必ず異なるものになるため、ユーザの見た目で同じ画像であっても、異なるものと判定されます。

参照型(クラス)について理解を深めてください。


実現したい内容によるかもしれませんが、現在表示している画像に関する情報をフォームの変数として覚えておくだけで良いということはありませんか?
例えば、今表示しているファイル名を覚えておくとか、インデックス番号を覚えておくとか。
■No23690に返信(Azuleanさんの記事)
> >>PictureBox.imege=imge.Fromfile(ファイル名)
> >>
> >>演算子=は型system.drawingおよびsystem.drawing.imageに対して定義されてませんと出ます。
> >>どうしたら表示している画像を判定してくれるか教えてください
> >>
>>Is演算子かEqualsメソッド使われたらどうでしょう??
> だめです。
> PictureBox.Imageが持つ参照と、Image.FromFileが返す参照は必ず異なるものになるため、ユーザの見た目で同じ画像であっても、異なるものと判定されます。
>
> 参照型(クラス)について理解を深めてください。
>
>
> 実現したい内容によるかもしれませんが、現在表示している画像に関する情報をフォームの変数として覚えておくだけで良いということはありませんか?
> 例えば、今表示しているファイル名を覚えておくとか、インデックス番号を覚えておくとか。

すみません、仰られる通りでした。
勉強しますm(_ _)mスマン

DOBON.NET | プログラミング道 | プログラミング掲示板