我想檢查位圖對象,看它是否設置或爲空。看來.NET沒有這個功能。我已經看過MSDN庫網站和stackoverflow,並且很少提及與.NET相關的這一點。有沒有其他的方式來做到這一點在.NET中?有沒有辦法在.NET中檢查Bitmap是否爲空?
當TBitmaap不包含任何圖像的空屬性設置爲True
任何幫助將不勝感激。
我想檢查位圖對象,看它是否設置或爲空。看來.NET沒有這個功能。我已經看過MSDN庫網站和stackoverflow,並且很少提及與.NET相關的這一點。有沒有其他的方式來做到這一點在.NET中?有沒有辦法在.NET中檢查Bitmap是否爲空?
當TBitmaap不包含任何圖像的空屬性設置爲True
任何幫助將不勝感激。
你唯一的選擇位圖是它被實例化或者其無效,並從閱讀和評論你的答案,它混淆你正在嘗試做的。
你真的只需要檢查,如果該位爲空或不是,這是我覺得,相當於你說的語言,是空的:
private Bitmap _bmp;
private void button1_Click(object sender, EventArgs e) {
if (_bmp == null)
_bmp = new Bitmap(@"c:\example.bmp");
}
您可以擴展出來的,像這樣:
public static class MyExensions {
public static bool IsEmtpy(this Bitmap bitmap) {
return (bitmap == null);
}
}
而且會變成你的代碼變成這樣:
private void button1_Click(object sender, EventArgs e) {
if (_bmp.IsEmtpy())
_bmp = new Bitmap(@"c:\example.bmp");
}
糾正我,如果我錯了。
來自德爾福win32,我知道你可以創建一個位圖的對象,並在稍後設置其圖像屬性,如下所示。
Bitmap:TBitmap;
Bitmap := TBitmap.Create;
Bitmap.LoadFromFile('c:\example.bmp');
在這種情況下,您不能只檢查以查看Bitmap對象是否爲空或零。您需要實際檢查圖像屬性是設置還是空的。至於.NET,當你創建一個位圖的對象時,你必須將圖像作爲參數傳遞給它的構造函數。這意味着構造函數實例化並設置其圖像。 Henk Holterman指出,你可以檢查圖像分辨率,寬度和高度是否設置。
image1 = new Bitmap(@"C:\Documents and Settings\All Users\Documents\My Music\music.bmp", true);
我認爲如果構造函數無法加載文件,它會拋出一個異常,所以你不會有一個對象實例來訪問這些屬性。 –
你的意思是空的?空引用? – Oded
你能在這種情況下定義空嗎?對你來說是完全透明的圖像嗎?或者你只是想知道對象是否爲空? –
@ oded和ekonoik我的意思是如果位圖對象設置爲圖像或不。 – ThN