怎样将图片的二进制数据直接写到对话框中?

mumuzha 2003-08-18 04:23:26
现有一副位图图片的二进制数据值,最常用的办法是将图片的二进制数据写成文件(*.bmp),然后用bitblt将图片输出到对话框。而我不想用这种方法,能否将二进制数值直接写到对话框中呢?
...全文
38 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
MicoInNet 2003-08-28
  • 打赏
  • 举报
回复
其实它的原理还是采用图片的方式显示出来,还不如采用常规的办法,将图片的二进制数据写成文件(*.bmp),再用对话框添加。
flei 2003-08-28
  • 打赏
  • 举报
回复
LPVOID pVoid = NULL;
HGLOBAL hGlobal = GlobalAlloc(GMEM_MOVEABLE, filesize);
pVoid = GlobalLock(hGlobal);
memcpy(pVoid, pFileData/*内存中已有的数据*/, filesize);
GlobalUnlock(hGlobal);
LPSTREAM pstm = NULL;
HRESULT hr = CreateStreamOnHGlobal(hGlobal, TRUE, &pstm);
LPPICTURE pPicture;
hr = ::OleLoadPicture(pstm, filesize, FALSE, IID_IPicture,
(LPVOID *)&pPicture);
pstm->Release();

HDC hdc = ::GetDC(m_hWnd);
CRect rc;
GetClientRect(rc);
rc.DeflateRect(10, 10, 80, 10);
long hmWidth, hmHeight;
pPicture->get_Width(&hmWidth);
pPicture->get_Height(&hmHeight);
pPicture->Render(hdc, 1, 1, 400, 350, 0, hmHeight, hmWidth, -hmHeight, rc);
::ReleaseDC(m_hWnd, hdc);
mumuzha 2003-08-22
  • 打赏
  • 举报
回复
自己up
mumuzha 2003-08-22
  • 打赏
  • 举报
回复
up
Napoleo 2003-08-19
  • 打赏
  • 举报
回复
block bit
bltFast
msdn有
mumuzha 2003-08-18
  • 打赏
  • 举报
回复
对呀,怎样转换?
怎样加?
最好说得具体些!
flei 2003-08-18
  • 打赏
  • 举报
回复
to:gzshd
怎样加?
flei 2003-08-18
  • 打赏
  • 举报
回复
就算可以,画点的话怎样将二进制值换算成函数所需的参数值?
gzshd 2003-08-18
  • 打赏
  • 举报
回复
可以将其加到程序的资源中
niani 2003-08-18
  • 打赏
  • 举报
回复
画点,不过慢
COLORREF SetPixel( int x, int y, COLORREF crColor );

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧