2010-12-04 11 views
0

ifステートメントで画像を使用するにはどうすればよいですか?ifステートメントの画像を使用

私は事前に(例えばimage1の)具体的なイメージがそれであるならば、その後、いくつかのwork.thanksを行うことのPictureBoxのクリックイベントに

更新をチェックしたい例えば

:このような

をBOOLするsystem.drawing.imageを変換することはできません。 ピクチャがnullであるか、またはそれにイメージを持つことができ、私はImage1のは私がエラーを取り、このコードをコンパイルするとき、今

private void pictureBox34_Click(object sender, EventArgs e) 
    { 
     if (///picturebox34=image1) 
     { 
      f(); 
     } 
    } 

それであるかどうか確認したいです

+0

どういう意味ですか? Imageオブジェクトが別のImageオブジェクトと等しいかどうかを知りたいと言っていますか?または、画像の個々のバイトを比較して一致するかどうかを確認したいですか?イメージ検出アルゴリズムのいくつかの種類? – Scottie

+0

コントロールにアイテムを初期化または追加するサンプルコードを表示します。 –

+0

私の質問を更新しました – Arash

答えて

3

すべての画像がメモリにロードされている場合は、ピクチャボックスに割り当てられたImageオブジェクトと他のImageオブジェクトの参照比較を実行して、ピクチャボックスにあるものを判断するだけで済みます。あなたはPictureBoxImageを割り当てるとき

別の方法としては、画像を識別し、イベントハンドラでのテストのためにTagプロパティの値を使用するようにPictureBoxTagプロパティを設定することができます。もちろん、この場合、メモリ内に1つのImageだけが必要ですが、Tagプロパティに割り当てる画像の名前のような識別情報が必要です。

更新:更新された質問に基づいて、照合の比較を実行してください。あなたは次のようにすることができます

private void pictureBox34_Click(object sender, EventArgs e) 
{ 
    if (picturebox34.Image == image1) 
    { 
     f(); 
    } 
} 
+1

+1 'Object'からのキャストが多く、実際に私のお気に入りの解決策ではない' Tag'プロパティがありますが... –

関連する問題