728x90
화면을 클립보드에 넣기 위한 코드입니다
함수 호출 이후 그림판 등으로 붙여 넣기 했을 시 저장된 화면이 보입니다
void CWndToClipboard(CWnd *pWnd, CRect rect)
{
CBitmap bmp;
CClientDC dc(pWnd);
CDC memDC;
memDC.CreateCompatibleDC(&dc);
bmp.CreateCompatibleBitmap(&dc,rect.Width(),rect.Height());
CBitmap* pOldbmp = memDC.SelectObject(&bmp);
memDC.BitBlt(0,0,rect.Width(),rect.Height(), &dc, 0,0,SRCCOPY);
pWnd->OpenClipboard();
EmptyClipboard();
SetClipboardData(CF_BITMAP,bmp.GetSafeHandle());
CloseClipboard();
memDC.SelectObject(pOldbmp);
bmp.DeleteObject();
memDC.DeleteDC();
}
제 글이 도움이 되셨다면 댓글 & 공감 부탁드려요 😀
728x90
반응형
'Application > MFC' 카테고리의 다른 글
[MFC] 16진수 변환(CString <-> BYTE) (0) | 2023.07.06 |
---|---|
[MFC] GetPrivateProfileString / WritePrivateProfileString (0) | 2023.06.28 |
[MFC] CBitmap 파일 저장 (CBitmap To CImage) (0) | 2023.05.08 |
[MFC] Thread 동기화 (CreateEvent) (0) | 2023.05.03 |
[MFC] x64 OutputDebugString 디버깅 오류 (0) | 2023.04.27 |