JPG,GIF in Dialog anzeigen ... aber wie ??



  • Hallo,

    ich versuch in einem Dialog ein .jpg/.gif/.bmp Bild anzuzeigen.
    In diesem Forum habe ich dazu diesen JPG,GIF in Dialog anzeigen (die lösung) - (FAQ?) und diesen JPG,GIF in Dialog anzeigen (die lösung) - Ergänzung Beitrag gefunden.
    Das funktioniert soweit auch. Nur will ich nicht durch einen klick auf einen Button das zeichnen auslösen! Ich will das das bild gerstellt wird wenn der Dialog erstellt wird.

    Also hab ich den Code nen bischen umgestellt und den Teil des in den Threads geposteten Codes in die

    DoDataExchange(CDataExchange* pDX)
    

    methode verlagert:

    fileName_ = "C:asd.jpg";
    
        CString picPath = fileName_.c_str();
    
        LPCTSTR pPic = picPath;
    
        USES_CONVERSION;
    
        OleLoadPicturePath( T2OLE( pPic ), 0, 0, 0, IID_IPicture, (void **)&m_mapPic );
    
        DrawPic( m_mapPic );
    

    Jedoch bringt dies nix!?

    Ich habe das gefühl, das das bild nicht gezeichnet werden kann, weil das Dialogfenster dann noch nicht fertiggestellt ist. Kann das sein?

    Wo sollte ich diesen Code sonst hinpacken? Oder mach ich grundsätzlich was falsch?

    Ich würde mich freuen, wenn mir jemand nen Tipp geben könnte...

    Gruß,
    n1



  • DoDataExchange ist komplett falsch.

    OnInitDialog
    wird aufgerufen wenn der Dialog erstellt wird.
    Solltest das aber auch in OnPaint anzeigen da er bei neuzeichnen wieder gelöscht wird.



  • Es reicht, wenn ers nur in OnPaint hat, da das ja acuh beim Starten des Programms aufgerufen wird ...



  • Habe die OnInitDialog erwähnt damit er beim nächsten mal nicht den Fehler wie oben wieder macht und initialisierungen für den Dialog in die DoDataExchange schreibt.
    😉



  • Hallo,

    vielen Dank für die Antworten. Nun funktionierts so wie es soll. Danke!


Anmelden zum Antworten