我正在應用程序中有一個conbobox和一個picturebox。用戶選擇一個路徑,並且conbobox將路徑加載到2000個圖像,並顯示第一個路徑。當用戶更改conbobox的索引時,顯示的圖像會發生變化,但我不知道如何刪除圖片框中的圖像。Windows窗體 - 圖片框。如何刪除圖像
如果我只是覆蓋圖像它沒有做的工作,因爲當我反覆做這個程序崩潰,因爲內存。如何刪除圖片框內的圖片?
編輯: 我做了很少的變化,似乎無法再次重現錯誤..所以也許這是別的。但只是爲了檢查,這是代碼泄漏的內存?
tips:config是一個單獨的元素,包含一些信息,在這種情況下,圖像在哪裏。
private: System::Void comboBox_image1_SelectedIndexChanged(System::Object^ sender, System::EventArgs^ e) {
System::String^ aux;
DIC_config* config=DIC_config::Instance();
if(config->images_path!=NULL){
aux=gcnew System::String(config->images_path);
aux=aux+"\\CAM_0\\Snap_0_0"+(this->comboBox_image1->SelectedIndex+1)+".bmp";
System::IO::FileStream^ image_file=gcnew System::IO::FileStream(aux,System::IO::FileMode::Open,System::IO::FileAccess::Read);
System::Drawing::Bitmap^ img = gcnew System::Drawing::Bitmap(image_file);
this->pictureBox_image1->Image=img;
//img->~Bitmap(); this doesnt work, deletes the image of picturebox and makes the program chrash
}
}
你確定你有C++項目? – VladL 2013-03-11 09:44:09
我們已經在您的Sample中看到了C#代碼...確認編程語言.... – Pandian 2013-03-11 09:50:17
@VladL對不起,剛剛從別處複製代碼是因爲我在編輯我的項目,但它並不完全正確。我有一個C++項目,不用擔心。這個想法仍然是一樣的。 – 2013-03-11 10:01:24