HGLOBAL als Bitmap anzeigen



  • Hi ich will aus dieser Funktion das Bitmap anzegen lassen in meinem Dialog. Hat da jemand eine idee? Hab es versucht über HBITMAP aber klappt irgendwie nicht. zeigt keinen Fehler klappt aber auch nicht???

    Freu mich über Antwort

    HGLOBAL GetPCVisionImageSnap()
    {
    BYTE *m_lpstr;

    int iLoop;
    long len;
    RGBQUAD lpRgb;
    LPBITMAPINFOHEADER lpInf;
    len = m_ImageMaxX * m_ImageMaxY;
    HGLOBAL hBmp = GlobalAlloc (GMEM_FIXED,(LONG)sizeof(BITMAPINFOHEADER)+256
    sizeof(RGBQUAD)+len);
    lpInf = (LPBITMAPINFOHEADER)GlobalLock(hBmp);
    lpInf->biSize=sizeof(BITMAPINFOHEADER);
    lpInf->biWidth=m_ImageMaxX;
    lpInf->biHeight=m_ImageMaxY;
    lpInf->biPlanes=1;
    lpInf->biBitCount=8;
    lpInf->biCompression=BI_RGB;
    lpInf->biSizeImage=m_ImageMaxX*m_ImageMaxY;
    lpInf->biXPelsPerMeter=0;
    lpInf->biYPelsPerMeter=0;
    lpInf->biClrUsed=256;
    lpInf->biClrImportant=0;
    m_lpstr= (BYTE *)lpInf+sizeof(BITMAPINFOHEADER);
    lpRgb=(RGBQUAD *)m_lpstr;
    for (iLoop = 0; iLoop < 256; iLoop++)
    {
    lpRgb->rgbBlue=(BYTE)iLoop;
    lpRgb->rgbGreen=(BYTE)iLoop;
    lpRgb->rgbRed =(BYTE)iLoop;
    lpRgb->rgbReserved =(BYTE)0;
    lpRgb++;
    }
    m_lpstr=m_lpstr+256 * sizeof(RGBQUAD) ;
    itx_host_snap(m_fghIcp0,m_lpstr);

    HGLOBAL hBmpTmp=mirror_yBMP(hBmp);
    GlobalFree(hBmp);
    // GlobalUnlock(hBmpTmp);
    return hBmpTmp;
    }


Anmelden zum Antworten