永发信息网

c/c++中~~以下代码是双缓存,但是我不想要双缓存,要怎样修改代码?

答案:2  悬赏:0  手机版
解决时间 2021-04-04 23:09
  • 提问者网友:人傍凄凉立暮秋
  • 2021-04-04 06:38
HDC hDc,memDc;
hDc = GetDC(GetDesktopWindow());
memDc = CreateCompatibleDC(hDc);
HBITMAP hBitMap;
hBitMap = CreateCompatibleBitmap(hDc,with,hight);
SelectObject(memDc,hBitMap);
BitBlt(memDc,0,0,with,hight,hDc,0,0,SRCCOPY);

CImage mImage;
mImage.Attach(hBitMap);
mImage.Save(pthis->PicPath);

这个代码,就是截屏幕图,然后保存起来,似乎是什么双缓存,如果不双缓存,要怎么改?
最佳答案
  • 五星知识达人网友:躲不过心动
  • 2021-04-04 07:31
上面已经取到了 桌面, 在 memDC中,

这里保存到文件
CImage mImage;
mImage.Attach(hBitMap);
mImage.Save(pthis->PicPath);
全部回答
  • 1楼网友:一袍清酒付
  • 2021-04-04 09:10
#include <iostream> #include <vector> using namespace std; int main() { int a; vector<int> sum; do { cin>>a;   if(!cin)   {cin.clear();   cin.ignore(1024,'\n');   }   else{    sum.push_back(a);}  }while(cin.peek() != '\n'); // 被getchar()吃掉了,你可以使用cin.peek来处理测试是否为'\n' cout<<"输出:"<<endl; for(vector<int>::iterator index=sum.begin();index!=sum.end();++index)  cout<<*index<<' '; cout<<endl; }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯