GDI Image im BCB2009



  • Hallo,

    ichhab GDI+ integriert. Läuft soweit auch alles, jedoch krieg ich das Laden über den OpenDialog nicht hin.

    Gdiplus::Image image(sFile);
    

    [BCC32 Fehler] cSanjeevini.cpp(22505): E2285 Keine Übereinstimmung für 'Gdiplus::Image::Image(UnicodeString)' gefunden

    sFile weder als String, WideString, AnsiString usw. Was muss ich machen ?

    Danke !



  • Der Konstruktor von Image will ein const wchar_t* als Parameter. Ich denke c_str() sollte hier helfen.



  • Hi,

    so gehts:

    void __fastcall TForm1::Button8Click(TObject *Sender)
    {
       if (OpenPictureDialog->Execute()) {
    	HDC hdc = Image1->Canvas->Handle;
    	Gdiplus::Graphics graphics(hdc);
    
    	String strFileName = ExtractFileName(OpenPictureDialog->FileName);
    	wchar_t wFileName[256];
    	StringToWideChar(strFileName, wFileName, sizeof(wFileName));
    
    	Gdiplus::Image image(wFileName);
    	graphics.DrawImage(&image, 0, 0, image.GetWidth(), image.GetHeight());
       }
    }
    //---------------------------------------------------------------------------
    

    mfg
    kpeter


Anmelden zum Antworten