Unterschiede bei Win 98 und XP (2)



  • Hallo,
    ich möchte auf einem Dialog mehrere Bilder dynamisch setzen
    (10 Bilder). Den Code, den ich benutze, habe ich unten
    abgedruckt. Mein Problem: Bei Windows XP werden alle Bilder
    richtig besetzt und angezeigt. Bei Windows 98 allerdings werden
    nur einige Bilder angezeigt (die letzten 4) und an den
    Stellen, wo die anderen sein müßten, ist gar nichts.

    Was kann das sein ? Den Code hab ich kontrolliert...kein Schreibfehler. Und sonst würde es ja unter Xp auch nicht funktionieren, oder ?

    Ich benutze folgenden Code:

    CWnd* pWnd1 = GetDlgItem(IDC_BILD1);
    CWnd* pWnd2 = GetDlgItem(IDC_BILD2);
    ...
    CDC* pDC1 = pWnd1->GetDC();
    CDC* pDC2 = pWnd2->GetDC();
    ...
    pWnd1->Invalidate();
    pWnd1->UpdateWindow();
    pWnd2->Invalidate();
    pWnd2->UpdateWindow();
    ...
    dcMemory1.CreateCompatibleDC(pDC1);
    dcMemory2.CreateCompatibleDC(pDC2);
    ...
    if (m_Flag1)
    theResource1 = (IDB_OK);
    else
    theResource1 = (IDB_FAIL);

    if (m_Flag2)
    theResource2 = (IDB_OK);
    else
    theResource2 = (IDB_FAIL);
    ...
    bitmap1.LoadBitmap(theResource1);
    bitmap2.LoadBitmap(theResource2);
    ...
    dcMemory1.SelectObject(&bitmap1);
    dcMemory2.SelectObject(&bitmap2);
    ...
    pDC1->BitBlt(0,0,100,100,&dcMemory1,0,0,SRCCOPY);
    pDC2->BitBlt(0,0,100,100,&dcMemory2,0,0,SRCCOPY);
    ...
    pWnd1->ReleaseDC(pDC1);
    pWnd2->ReleaseDC(pDC2);
    ...



  • Hat noch niemand ein ähnliches Problem gehabt ?


Anmelden zum Antworten