Bitmaps in PictureBox laden
-
Hallo,
ich habe ein kleines Problem. Ich möchte ein Bild auf laden und auf dem PictureBox anzeigen lassen. Ich habe eine SDI-Project, der auf FormView basiert. Also ich habe ein PictureBox und erstellt und im Menüfeld ein Belehl Bitmapload hinzugefügt. Nun habe ich in der Viewdatei folgende Funtion hinzugefügt
void CGrexBmpView::OnDateiBitmapload() { //Um einen Bitmap zu laden static char BASED_CODE szFilter[] = "Bitmap-Dateien (*.bmp)|*.bmp||"; CFileDialog m_ldFile(TRUE, ".bmp", m_sBitmap, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter); if (m_ldFile.DoModal() == IDOK) { m_sBitmap = m_ldFile.GetPathName(); HBITMAP hBitmap = (HBITMAP) ::LoadImage(AfxGetInstanceHandle(), m_sBitmap, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_CREATEDIBSECTION); if (hBitmap) { if (m_bmpBitmap.DeleteObject()) m_bmpBitmap.Detach(); m_bmpBitmap.Attach(hBitmap); m_bPicLoaded = TRUE; } Invalidate(); } //Um den Bitmap in dem Box anzuzeigen CBitmap Bmp1; Bmp1.LoadBitmap(IDB_BITMAP1); m_Picture.SetBitmap(Bmp1); }
Irgentwie mag er das nicht
Was mache ich falsch??
-
Also ich habe mein Code verändert. Es sieht jetzt so aus
void CGrexBmpView::OnDateiBitmapload() { //Um einen Bitmap zu laden static char BASED_CODE szFilter[] = "Bitmap-Dateien (*.bmp)|*.bmp||"; CFileDialog m_ldFile(TRUE, ".bmp", m_sBitmap, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter); if (m_ldFile.DoModal() == IDOK) { m_sBitmap = m_ldFile.GetPathName(); HBITMAP hBitmap = (HBITMAP) ::LoadImage(AfxGetInstanceHandle(), m_sBitmap, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_CREATEDIBSECTION); if (hBitmap) { if (m_bmpBitmap.DeleteObject()) m_bmpBitmap.Detach(); m_bmpBitmap.Attach(hBitmap); m_bPicLoaded = TRUE; } Invalidate(); } //Um den Bitmap in dem Box anzuzeigen m_Picture.SetBitmap(m_bmpBitmap); UpdateWindow(); }
Es funtkioniert immer noch nicht