tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
9
ZUGRIFFE
5451
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    gisi gisi ist offline Mitglied Bronze
    Registriert seit
    Jun 2004
    Beiträge
    42
    Ich brauche Hilfe,

    ich versuche schon längere Zeit ein Bild in einen Dialog einzufügen, der Versuch ist, bis jetzt, allerdings kläglich gescheitert
    Vielleicht weis jemand von euch ein Tutorial!!

    lg gisi
     

  2. #2
    Registriert seit
    Apr 2002
    Ort
    Delmenhorst (Niedersachsen)
    Beiträge
    3.567
    moin


    Bitte nciht soviele Informationen......

    Mit oder ohne MFC?
    Windows oder Linux?


    mfg
    umbrasaxum
     

  3. #3
    gisi gisi ist offline Mitglied Bronze
    Registriert seit
    Jun 2004
    Beiträge
    42
    sorry,

    mit MFC --> Windows
    Visual Studio 2003 .NET

    lg
     

  4. #4
    Avatar von Endurion
    Endurion Endurion ist offline Mitglied Diamant
    Registriert seit
    Apr 2004
    Beiträge
    2.151
    Die einfachste Variante ist:

    A) eine Bitmap in die Ressourcen einfügen (Ressource hinzufügen)
    B) dem Dialog im Dialogeditor ein Picture Control (was auch nur ein Static ist) hinzufügen
    C) in den Eigenschaften des Picture Controls das Property Bild auf die Ressource-ID deiner Bitmap setzen
     

  5. #5
    Avatar von maexle1894
    maexle1894 maexle1894 ist offline Mitglied Silber
    Registriert seit
    Dec 2004
    Beiträge
    64
    Hi,
    klappt das auch, wenn man das Projekt in C geschrieben hat? Bei mir wird die Bitmap nämlich nur im Editor angezeigt. Nach dem compilieren is sie weg...
     
    www.crimefighter.de - Online-RPG-Project

  6. #6
    Avatar von Endurion
    Endurion Endurion ist offline Mitglied Diamant
    Registriert seit
    Apr 2004
    Beiträge
    2.151
    Die Win32-Api ist auch reines C, das sollte problemlos klappen.

    Prüf mal, ob das .rc-File auch tatsächlich in deinem Projekt eingebunden ist (kommt vor). Wenn ja, dann besorg dir mal den ResourceHacker (Freeware), damit kannst du prüfen, ob die Bitmap in deinen Resourcen enthalten ist.
    Geändert von Endurion (31.05.06 um 09:34 Uhr)
     

  7. #7
    Avatar von maexle1894
    maexle1894 maexle1894 ist offline Mitglied Silber
    Registriert seit
    Dec 2004
    Beiträge
    64
    Hi Endurion,
    endlich mal eine Antwort, danke!

    Das habe ich beides schon gemacht. Die Bitmap ist laut ResHack eingebunden, es kommt zwar eine AccessViolation, die kommt jedoch auch beim Dialog...

    Ich weiß echt nicht, an was das noch liegen könnte...
     
    www.crimefighter.de - Online-RPG-Project

  8. #8
    Registriert seit
    Apr 2004
    Ort
    Bbg
    Beiträge
    200
    Schau, ob du der Name der Bilddatei in Resource.h mit dem im .rc File uebereinstimmt. Ich habe mal so einen Fall gehabt:

    Resources.h:
    #define IDB_MEINBILD 100

    Resources.rc
    IDB_MIENBILD BITMAP "bla.bmp"

    Der Compiler sagt in dem Fall auch nix..
     

  9. #9
    Avatar von Xodery
    Xodery Xodery ist offline Mitglied
    Registriert seit
    Aug 2006
    Beiträge
    11
    Hi!
    Und mit welchem Quellcode fügt man dann das Bild z.b. in ein Fenster oder eine Dialogbox ein?

    Xodery
     
    Alles ist wie immer, bloß schlimmer

  10. #10
    wieschoo wieschoo ist offline Mitglied Bronze
    Registriert seit
    Jun 2005
    Beiträge
    36
    Ich code zwar nur mit reinen API, (schließlich soll man keine Klassen verwenden, die schlecht implentiert sind).

    die resource-datei (rc)
    Code :
    1
    2
    
    ID_BITMAP1 BITMAP "schloss.bmp"
    CONTROL "Picture0",IDM_LOCK,"STATIC",SS_BITMAP |WS_CHILD |WS_VISIBLE ,7,9,48,48

    die cpp -Datei
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    
    case WM_PAINT:
    hbit = GetDlgItem(hDlg,IDM_LOCK);
    HDC hDC, MemDCExercising,hdia;
        PAINTSTRUCT Ps;
        HBITMAP bmpExercising;
    hDC = BeginPaint(hbit, &Ps);
     
            // Load the bitmap from the resource
            bmpExercising = LoadBitmap( MyInstance, MAKEINTRESOURCE(1000));
            // Create a memory device compatible with the above DC variable
            MemDCExercising = CreateCompatibleDC(hDC);
                 // Select the new bitmap
                 SelectObject(MemDCExercising, bmpExercising);
     
            // Copy the bits from the memory DC into the current dc
            BitBlt(hDC, 10, 10, 450, 400, MemDCExercising, 0, 0, SRCCOPY);
     
            // Restore the old bitmap
            DeleteDC(MemDCExercising);
            DeleteObject(bmpExercising);
            EndPaint(hbit, &Ps);

    Achja IDM_LOCK müsstest du als Konstante sowohl in der Resourcedatei als auch in der CPP-Datei definieren. Oder schreibst extra einen Resourceheader.
     
    http://www.wieschoo.de

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 06.07.10, 14:51
  2. Bild in Dialog einfügen
    Von Raven280438 im Forum VisualStudio & MFC
    Antworten: 2
    Letzter Beitrag: 30.06.10, 22:56
  3. Login Dialog + Bild?
    Von Herli im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 1
    Letzter Beitrag: 09.11.08, 15:52
  4. Antworten: 3
    Letzter Beitrag: 14.06.05, 15:42
  5. Bild im Dialog laden
    Von xploid im Forum VisualStudio & MFC
    Antworten: 1
    Letzter Beitrag: 01.10.04, 07:16