如题.要求能够用鼠标截取桌面任意一块区域的图片,类似于QQ的效果.
[email protected]
[email protected]
解决方案 »
- 请教怎么设置dll的type library和删除注册表类型库
- 在标准工具栏中添加了新项后(并且在菜单中没有相同的项),如何用向导添加消息处理函数?
- 用firefox 浏览器.的 xdjm请指点.和班主请入..
- CArchive类中如何定位到文件的末尾?
- 请教大侠问题
- DAO添加记录时碰到的小问题,答对给50分!!
- 请问如何在对话框中用鼠标画框截图?
- 基于Dialog的视图中怎么实现滚动显示对话框显示不完的数据
- 还是送分
- api程序中怎么使用MFC?
- 使用tcp或udp进行长连接的开发,哪中效率更高,有什么区别(条件是并发量在5万左右)!!!!!!
- Vc6.0中.从EXCEL9.OLB中导出的excel9.cpp和excel9.h用来操作EXCEL.请问如果设置列宽?
http://www.czvc.com/down.asp?id=15
{
CRect rect(0,0,GetSystemMetrics(SM_CXSCREEN),GetSystemMetrics(SM_CYSCREEN));
HDC hScrDC,hMemDC; // 屏幕和内存设备描述表
HBITMAP hBitmap, hOldBitmap;// 位图句柄
int xScrn, yScrn; // 屏幕分辨率
hScrDC = CreateDC("DISPLAY", NULL, NULL, NULL); //为屏幕创建设备描述表
hMemDC = CreateCompatibleDC(hScrDC);//为屏幕设备描述表创建兼容的内存设备描述表
xScrn = GetDeviceCaps(hScrDC, HORZRES);// 获得屏幕分辨率
yScrn = GetDeviceCaps(hScrDC, VERTRES);
hBitmap = CreateCompatibleBitmap(hScrDC, rect.Width(), rect.Height());// 创建一个与屏幕设备描述表兼容的位图
hOldBitmap =(HBITMAP)SelectObject(hMemDC, hBitmap);// 把新位图选到内存设备描述表中
BitBlt(hMemDC, 0, 0, rect.Width(), rect.Height(),hScrDC,rect.left,rect.top, SRCCOPY);// 把屏幕设备描述表拷贝到内存设备描述表中
hBitmap =(HBITMAP)SelectObject(hMemDC, hOldBitmap);//得到屏幕位图的句柄
DeleteDC(hScrDC);//清除
DeleteDC(hMemDC);
return hBitmap;// 返回位图句柄
}