我想显示display_bufer里的颜色数据,怎么什么都没有??请问各位 问题出在哪呢?
CBitmap hDisplay;
HDC hDC = CreateDC("Display",NULL,NULL,NULL);
HDC hMemDC = CreateCompatibleDC(hDC);
error = hDisplay.CreateBitmap(SCREEN_W,SCREEN_H,1,24,display_bufer); BitBlt(hDC,0,0,SCREEN_W,SCREEN_H,hMemDC,0,0,SRCCOPY); SelectObject(hDC,hDisplay);
CBitmap hDisplay;
HDC hDC = CreateDC("Display",NULL,NULL,NULL);
HDC hMemDC = CreateCompatibleDC(hDC);
error = hDisplay.CreateBitmap(SCREEN_W,SCREEN_H,1,24,display_bufer); BitBlt(hDC,0,0,SCREEN_W,SCREEN_H,hMemDC,0,0,SRCCOPY); SelectObject(hDC,hDisplay);
解决方案 »
- {求大侠指点}用vs2008的MFC设计一个产品检测界面,但当需要检测项较多时,软件经常出错,不知道是什么原因,求高手讲解
- lib ignored; no imports found from detoured.lib 和GetSafeHwnd': identifier not fo
- vs2008解决方案问题
- 单击任务栏上的应用程序,触发什么消息?
- 怎样再WIN 32 CONSOLE 程序用MFC CString 类和AfxBeginThread()函数
- 一个读版本信息的API函数的用法(我想好好久都是错的,急死人了,英语文档又看不懂,希望能给改一下代码)
- 急!请问高手用什么方法处理一个TCP连接中的大量数据交换较好
- 获取网页表单的输入,内嵌WebBrowser控件
- dshow连接错误,高手帮忙看看少了哪个库
- 在哪能找到Win32 SDK,它是不是开发驱动程序必须的?
- 我想写个简单的OCX,问题如下:
- 在多行Edit里,如果得到行前光标所有在的行数?
这句得到的DC有效么?
还有,CreateBitmap返回值是否正确?
HDC hDC 建议用GETDC
CDC dcMem;dcMem.CreateCompatibleDC(&dc);
// 后面同你的代码
CPaintDC dc(this); // device context for painting
pDC = &dc; error = hMemDC.CreateCompatibleDC(pDC);
error = hDisplay.CreateBitmap(SCREEN_W,SCREEN_H,1,24,display_buffer);
CBitmap * pOldBitmap = hMemDC.SelectObject(&hDisplay);
error = pDC->BitBlt(0,0,SCREEN_W,SCREEN_H,&hMemDC,0,0,SRCCOPY);
hMemDC.SelectObject(pOldBitmap);
HDC hScrDC, hMemDC;
HBITMAP hBitmap, hOldBitmap;
int nX, nY, nX2, nY2;
int nWidth, nHeight; if (IsRectEmpty(lpRect))
return NULL; hScrDC = CreateDC(_T("DISPLAY"), NULL, NULL, NULL); hMemDC = CreateCompatibleDC(hScrDC);
nX = lpRect->left; nY = lpRect->top; nX2 = lpRect->right; nY2 = lpRect->bottom; if (nX < 0) nX = 0;
if (nY < 0) nY = 0;
if (nX2 > m_xScreen) nX2 = m_xScreen;
if (nY2 > m_yScreen) nY2 = m_yScreen;
nWidth = nX2 - nX;
nHeight = nY2 - nY; hBitmap = CreateCompatibleBitmap(hScrDC, nWidth, nHeight);
hOldBitmap = (HBITMAP)SelectObject(hMemDC, hBitmap);
BitBlt(hMemDC, 0, 0, nWidth, nHeight, hScrDC, nX, nY, SRCCOPY);
hBitmap = (HBITMAP)SelectObject(hMemDC, hOldBitmap); DeleteDC(hScrDC);
DeleteDC(hMemDC);
不对吧,我想要显示给定bufer里的数据!