我有以下问题。 在某处我定义了用于存储位图像素的数组。
unsigned int table[512*512];
我希望这个数组用作数据。我找到了CreateBitmap(),但它没有按照预期的方式运行。而不是将指针绑定到我的表,它创建了我的数组的一种快照。
CreateBitmap(512, 512, 32, 1, table);
看起来像这样:
table[5000]=0x00FFFFFF;
PlaceWhereICreateBitmap();
table[5001]=0x00FFFFFF;
PlaceWhereIDisplayBitmap(); //only pixel no. 5000 is updated
我想显示两个更改。 我也一直在阅读有关SetDIBits的内容,但它将数组复制到位图对象。如何直接设置位图缓冲区?
答案 0 :(得分:0)
查看 BitBlt 位块传输函数。
BitBlt(hDC, xDest, yDest, Width, Height, hMemDC, xSRC, ySRC, SRCCOPY);
谷歌的页面,不仅仅是 SRCCOPY 。