取得窗口遮住部分的图片? 一个窗口,想要获得它遮住部分桌面上的图片,有没有什么相关的资料呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DrawThemeBackground/DrawThemeParentBackground HDC hdc=::GetDC(HWND_DESKTOP); HBITMAP hbitmap= ::LoadBitmap(::AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_BITMAP1)); HDC hMemDC=::CreateCompatibleDC(NULL); SelectObject(hMemDC,hbitmap); Crect rc; getwindowclient(rc); ::BitBlt(hdc,0,0,1024,768,hMemDC,-rc.left,-rc.top,SRCCOPY); ::DeleteDC(hMemDC); ::DeleteObject(hbitmap); Sleep(5000); ::InvalidateRect(0,NULL,TRUE); 晕 搞错了 算了我写一段吧,写的不太好 但能实现功能 -_-#~ ShowWindow(SW_HIDE); Sleep(100); CClientDC dc(this); CDC dcScreen; dcScreen.CreateDC("DISPLAY", NULL, NULL, NULL); int m_sizex = GetDeviceCaps(dcScreen.GetSafeHdc(), HORZRES); int m_sizey = GetDeviceCaps(dcScreen.GetSafeHdc(), VERTRES); CRect rc; GetWindowRect(rc); CDC m_dcMem; CBitmap m_bmpScreen; m_dcMem.CreateCompatibleDC(&dcScreen); m_bmpScreen.CreateCompatibleBitmap(&dcScreen, m_sizex,m_sizey); m_dcMem.SelectObject(&m_bmpScreen); m_dcMem.BitBlt(0,0,m_sizex, m_sizey, &dcScreen, 0, 0, SRCCOPY); Sleep(100); ShowWindow(SW_SHOW); dc.BitBlt(0,0,m_sizex, m_sizey, &m_dcMem, rc.left, rc.top, SRCCOPY); 把那段代码直接放在按钮响应事件里才可行 放在onpaint会很卡 我也没仔细研究 提供个思路 在窗口移动的时候想获得除去此窗口后的桌面情况.ShowWindow(SW_HIDE); 这样无法实现的.不知道windows是怎么组织的,在窗口移动后立刻能将窗口后的内容重新画出来 关于bind绑定的问题。本人小白求指导 (VC操作office)怎么读取office文档的批注内容? ShellExecuteEx 打印Word文档问题 50分 如何获取非模式对话框无标题栏句柄?? CSocket CArchive无法接收到数据 数据传输问题 两个基于对话框应用程序的焦点问题 一个消息传送的问题,请大虾赐教 有谁知道hardwarehandbook哪里有的下载? 为什么VC++学了后面的又忘了前面的。如何有效率的学习VC++ RUNTIME中的构造函数不能带参数 vc中ado很多数据类型,有点昏了,大侠指教下
HBITMAP hbitmap= ::LoadBitmap(::AfxGetInstanceHandle(),
MAKEINTRESOURCE(IDB_BITMAP1));
HDC hMemDC=::CreateCompatibleDC(NULL);
SelectObject(hMemDC,hbitmap);
Crect rc;
getwindowclient(rc);
::BitBlt(hdc,0,0,1024,768,hMemDC,-rc.left,-rc.top,SRCCOPY);
::DeleteDC(hMemDC);
::DeleteObject(hbitmap);
Sleep(5000);
::InvalidateRect(0,NULL,TRUE);
ShowWindow(SW_HIDE);
Sleep(100);
CClientDC dc(this);
CDC dcScreen;
dcScreen.CreateDC("DISPLAY", NULL, NULL, NULL);
int m_sizex = GetDeviceCaps(dcScreen.GetSafeHdc(), HORZRES);
int m_sizey = GetDeviceCaps(dcScreen.GetSafeHdc(), VERTRES);
CRect rc;
GetWindowRect(rc);
CDC m_dcMem;
CBitmap m_bmpScreen;
m_dcMem.CreateCompatibleDC(&dcScreen);
m_bmpScreen.CreateCompatibleBitmap(&dcScreen, m_sizex,m_sizey);
m_dcMem.SelectObject(&m_bmpScreen);
m_dcMem.BitBlt(0,0,m_sizex, m_sizey, &dcScreen, 0, 0, SRCCOPY);
Sleep(100);
ShowWindow(SW_SHOW);
dc.BitBlt(0,0,m_sizex, m_sizey, &m_dcMem, rc.left, rc.top, SRCCOPY);