VC中关于剪切板中位图的 *** 作

VC中关于剪切板中位图的 *** 作,第1张

下示例代码是从剪贴板上取得一张位图,将它粘贴到客户区DC中。

if ( OpenClipboard() )

{

//Get the clipboard data

HBITMAP handle = (HBITMAP)GetClipboardData(CF_BITMAP);

CBitmap bm = CBitmap::FromHandle(handle);

//bm里面有你需要的位图信息,详情可以看看CBitmap 的组成

CClientDC cdc(this);

CDC dc;

dcCreateCompatibleDC(&cdc);

dcSelectObject(bm);

cdcBitBlt(0,0,200,200,&dc,0,0,SRCCOPY);

CloseClipboard();

}

思路有问题,应该如下做(只限于有标题栏的窗口)

1找到窗口,通过标题,如下:

HWND

myHwnd;

/////////找到窗口的HDR

myHwnd=::FindWindow(

NULL,/

class

name/

"窗口名称"

//LPCTSTR

lpWindowName

//

window

name

);

if(myHwnd==NULL)

//"Cannot

Find");

2

//找到窗口的位置及大小

::GetWindowRect(

myHwnd,

//

handle

to

window

mRect

//

client

coordinates

);

3获得屏幕句柄

HDC

hdc

=

::GetDC(NULL);

4通过mRect

和hdc

对界面进行 *** 作

CWnd有个成员函数

HWND GetSafeHwnd( ) const;

在对话框类的成员函数里用

HWND hwnd = GetSafeHwnd();

得到的hwnd就是句柄了

以上就是关于VC中关于剪切板中位图的 *** 作全部的内容,包括:VC中关于剪切板中位图的 *** 作、VC如果得到其他程序窗口的控件句柄、VC获取自身窗口句柄等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9567208.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存