2010-12-04 81 views
0

如何在if語句中使用圖像?在if語句中使用圖像

比如我想在PictureBox的單擊事件來檢查,如果特定圖像(例如圖像1)是它,然後做一些work.thanks提前

更新:

這樣 PictureBox的可以爲空或有它的形象,我想檢查image1的是與否

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

現在,當我編譯此代碼我把錯誤:無法轉換爲System.Drawing.Image爲bool

+0

你是什麼意思?你是說你想知道Image對象是否等於不同的Image對象?還是你想比較一個圖像的個別字節,看看它們是否匹配?某種圖像檢測算法? – Scottie 2010-12-04 07:34:21

+0

顯示用於初始化或將項目添加到控件的示例代碼。 – 2010-12-04 07:38:19

回答

3

如果您將所有圖像加載到內存中,那麼您可以簡單地在分配給PictureBox的Image對象和其他Image對象之間執行引用比較,以確定哪個圖片框位於PictureBox中。

或者當你分配ImagePictureBox可以設置PictureBoxTag屬性來識別圖像,並使用Tag屬性的值在事件處理程序的測試。當然,在這種情況下,只需要內存中的一個Image,但必須具有某種標識信息,例如分配給Tag屬性的圖像名稱。

更新:根據您更新的問題,您似乎很樂意進行推薦比較。你可以做如下

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