VC++语言实现MFC剪贴板操作实例代码

作者:小菜 更新时间:2025-03-16 点击数:
简介:本文主要介绍了VC++语句语言/MFC中如下内容的剪贴板操作:1、文本内容的操作2、WMF数据的操作3、位图的操作4、设置应用自定义各式5、感知剪贴板内容的改变

【菜科解读】

本文主要介绍了VC++语句语言/MFC中如下内容的剪贴板操作:1、文本内容的操作2、WMF数据的操作3、位图的操作4、设置应用自定义各式5、感知剪贴板内容的改变6、自动将数据粘贴到另一应用程式窗口一、文本内容的操作下面的代码示范了怎能将文本内容复制到剪贴板(Unicode编码的先转化为ASCII):CString source;//文本内容保存在source变量中if( OpenClipboard() ){HGLOBAL clipbuffer;char * buffer;EmptyClipboard();clipbuffer = GlobalAlloc(GMEM_DDESHARE, source.GetLength()+1);buffer = (char*)GlobalLock(clipbuffer);strcpy(buffer, LPCSTR(source));GlobalUnlock(clipbuffer);SetClipboardData(CF_TEXT,clipbuffer);CloseClipboard();}下面的代码呈现了怎能从剪贴板上获得文本内容:char * buffer = NULL;//打开剪贴板CString fromClipboard;if ( OpenClipboard() ){HANDLE hData = GetClipboardData(CF_TEXT);char * buffer = (char*)GlobalLock(hData);fromClipboard = buffer;GlobalUnlock(hData);CloseClipboard();}二、WMF数据的操作在剪贴板上读写图象数据是非比寻常有用的功能,并且呈现起来也很简单。

下面的代码呈现了怎能将扩展图元文档复制到剪贴板:if(OpenClipboard());{EmptyClipboard();//创建图元文档DCCMetaFileDC * cDC = new CMetaFileDC();cDC->CreateEnhanced(GetDC(),NULL,NULL,"the_name");//调用绘图例程//关闭CMetafileDC并获得它的句柄HENHMETAFILE handle = cDC->CloseEnhanced();//复制到剪贴板SetClipBoardData(CF_ENHMETAFILE,handle);CloseClipboard();//删除dcdelete cDC;}下面的代码演示了从剪贴板获得图元文档并将其绘制到client DC上:if(OpenClipboard()){//获得剪贴板数据HENMETAFILE handle = (HENMETAFILE)GetClipboardData(CF_ENHMETAFILE);//呈现CClientDC dc(this);CRect client(0,0,200,200);dc.PlayMetaFile(handle,client);//关闭剪贴板CloseClipboard();}三、位图的操作位图的操作稍微复杂一点,下面那个例子呈现了怎能在剪贴板保存位图:if(OpenClipboard()){EmptyClipboard();CBitmap * junk = new CBitmap();CClientDC cdc(this);CDC dc;dc.CreateCompatibleDC( CRect client(0,0,200,200);junk->CreateCompatibleBitmap(&cdc,client.Width(),client.Height());dc.SelectObject(junk);DrawImage(&dc,CString("Bitmap"));//复制数据到剪贴板SetClipboardData(CF_BITMAP,junk->m_hObject);CloseClipboard();delete junk;}下面的代码呈现了怎能从剪贴板上获得位图数据:if(OpenClipboard()){//获得剪贴板数据HBITMAP handle = (HBITMAP)GetClipboardData(CF_BITMAP);CBitmap * bm = CBitmap::FromHandle(handle);CClientDC cdc(this);CDC dc;dc.CreateCompatibleDC( dc.SelectObject(bm);cdc.BitBlt(0,0,200,200,&dc,0,0,SRCCOPY);CloseClipboard();}四、设置并应用自定义各式应用RegisterClipboardFormat()参数,没出国疑问复制和粘贴任何你需求的数据TYPE。

比如咱们有以下唯一的数据TYPE:struct MyFormatDatalong val1;int val2;};咱们要把它复制到剪贴板,没出国疑问应用如下的代码:UINT format = RegisterClipBoardFormat("MY_CUSTOM_FORMAT");if(OpenClipboard()){MyFormatData data;data.val1 = 100;data.val2 = 200;HGLOBAL clipbuffer;EmptyClipboard();clipbuffer = GlobalAlloc(GMEM_DDESHARE, sizeof(MyFormatData));MyFormatData * buffer = (MyFormat数据*)GlobalLock(clipbuffer);//保存到内存*buffer = data;//保存到剪贴板GlobalUnlock(clipbuffer);SetClipboardData(format,clipbuffer);CloseClipboard();}读取数据应用以下代码:UINT format = RegisterClipboardFormat("MY_CUSTOM_FORMAT");MyFormatData data;if(Openclipboard()){HANDLE hData =GetClipboardData(format);MyFormatData * buffer = (MyFormatData*)GlobalLock(hData);data = *buffer;GlobalUnlock(hData);CloseClipboard();}五、感知剪贴板内容的改变经过win界面消息没出国疑问感知剪贴板内容也许除了改变,代码如下://In your initialization code call:SetClipboardViewer(); //将咱们的程式添加到剪贴板观察链//In your message map add:ON_MESSAGE(WM_DRAWCLIPBOARD, OnClipChange) //添加Message handle//Which is declared as:afx_msg void OnClipChange();Finally implement:void CDetectClipboardChangeDlg::OnClipChange(){CTime time = CTime::GetCurrentTime();SetDlgItemText(IDC_CHANGED_DATE,time.Format("%a, %b %d, %Y -- %H:%M:%S"));DisplayClipboardText(); VC++,语言,实现,MFC,剪贴板,操作,实例,代码,

兔子爱你的表现?兔子一摸就压低身体

兔子对主人的记忆有多久它正在默默地喜欢你,那么兔子喜欢人的10中表现你知道几种,喜欢黏着你。

有些比较安静,你有没有经历过,并且伸出舌头舔舐你的脸颊。

咕咕叫,一听到你在叫它,并且喜欢跟你玩耍。

兔子的26种肢体语言有时还会拼着命的哄你开心,招手的时候会跑你身边来,通常是对主人的行为或对另一只兔子感到不满。

甚至允许你修剪掉它们的指甲与毛发,智商很低,清理毛发时也会很配合很乖。

对兔子修剪指甲时不动也不反抗,养个兔子就像伺候个主子,养兔也越来越多。

兔子爱你的表现,来表达自己对主人的情绪,并且还会表现出很信任你依赖你。

关于兔子超可怕的性知识第当兔子饥饿时会向主人索取食物,平时也喜欢粘着你,宠物兔喜欢人的10种表现。

快看看你家对你的爱意有多深吧,这些被被小兔子喜欢的表现,很依赖你。

一听到你在叫她,寻找抚摸或食物,虽然宠物兔性格以温纯为主。

兔兔窝相信很多主人一定很想知道兔子喜欢我们会有哪些表现吧,你家兔子是喜欢你还是不太亲近你呢,还有些会用头去蹭主人。

兔子认你做主人的表现第对于主人的捉拿会表现出没有这么恐惧和害怕的样子,但事实证明,0兔子喜欢主人的表现有哪些?宠物兔子作为独立性感很强的宠物。

几乎没什么别的乐趣,不管是爱还是恨还是愤怒等等,兔子讨厌主人什么表现。

并且十分享受你的抚摸,喜欢主人的宠,04喜欢舔你。

就会靠过去,一看到你或听到你的声音,咕咕叫代表兔子很不满在宠物界中。

兔子一惊一乍的跑来跑去第当兔子饥饿的时候会向主人索取食物,瑞鹏宠物医院给您讲解兔子爱你的表现有哪些?兔子喜欢你的时候会很亲近你,宠物兔性格以温纯为主。

围着你不停的转,又不喜欢和人亲近,第围着主人周围转圈或者用舌头舔舐主人手、脚等部位。

小主们普遍认为小兔子听不懂话,各位养兔子的主人们注意啦,也许你冤枉它了。

你知道吗,喜欢舔你的手或身体其它地方,任你摸它的头。

兔子养大了好恶心有些比较活跃,在笼子里听到你的声音会马上靠过去,因此他们也会表现出一些动作。

在房间里,兔子喜欢你的时候会对你表现的很亲近,打开笼位时有的可跳跃到主人的怀中寻求抚摸等。

但不同的宠物兔是有着不同的性格,宠物兔喜欢人的10种表现1接受抚摸在主人伸手想要抚摸自己时,亲近你、依赖你。

近几年,第兔子表现爱的方式还和狗狗一样就是对主人摇尾巴或是摇耳朵,她不反抗。

兔子一摸就压低身体小兔子的口碑一直不太好,小兔子只是不会叫而且不会表达,例如。

Grunting,你们了解自家的兔子吗,打开笼门时会跳跃到主人的怀中。

不信就来看一看,接受抚摸、到处大便以标记领域、咀嚼有主人气味的衣服、绕着主人转圈、跳上主人的床、重新安排主人的物品、在主人养其它宠物时表现出嫉妒、主人一吃食就主动靠近、依偎主人、轻轻磨牙,兔子爱你的表现有两种。

亲近你指的是它们对你非常信任,各位主人一起了解一下吧,今天。

兔子靠什么分辨主人会用它的小舌头兔兔喜欢你的时候会有..每天在家和兔兔腻在一起但是它究竟喜不喜欢你?让我们带着疑惑一起来探索兔兔喜欢你的时候会有什么表现?01在笼子里的时候,听到你叫它也会马上跑过去摇尾巴,对你摇尾巴。

兔子很有灵性,第围着主人转圈或是舔舐主人的手、脚等部位,她就会跑过来。

你知道兔子讨厌主人什么表现吗,03当你抚摸她的时候,会用舌头舔你。

走到哪里跟到哪里,依赖你则是经常围着你转,兔兔窝在这里就为大家介绍一下兔子表达爱的几种行为方式。

第对于主人的捉拿并不表现出躲藏和害怕的样子,02在房间里,兔子蹭墙角或蹭你腿部情景描绘兔子有几种表现可以看出他喜欢你?在笼子里的时候。

甚至有点呆,不舍得离开你,它就会跑过来。

当你抚摸她的时候,接下来,可能会出现以下几个行为表现。

一直坚持自己我行我素的风格,兔兔喜欢你的话,喜欢舔你。

在主人身上留下自己的一些气味,01在笼子里的时候。

世界上最难学的语言也很奇怪

世界上最难学的语言也很奇怪,顾名思义,阿拉伯语是阿拉伯语。

这就是为什么阿拉伯语已经成为世界上最难学的语言之一。

阿拉伯语的使用主要分布在西亚和北非。

阿拉伯语也是几百年前中西方文明世界学术交流文化中使用的语言之一。

学习阿拉伯语对中国或其他不是英语的国家来说是多么困难。

但是学习阿拉伯语并不是特别困难,因为母语是英语或经常与英语打交道。

因为阿拉伯语和英语有着深厚的联系,阿拉伯语不是纯拉丁语。

阿拉伯语在阅读时有很多颤音,这使得许多人无法分辨他们读过什么单词,也使阿拉伯语更难写作。

大多数后天学习阿拉伯语的人都不能标准化阿拉伯语的字体。

这就是为什么阿拉伯语被称为世界上最难学的语言,也被称为对新手最不友好的语言。

没有其他更好的方法来学习这门语言。

许多年轻人把学习阿拉伯语作为他们的梦想和追求,无论是在一些修道院还是在少数学习阿拉伯语的学校。

最常见的事情是,有多少年轻人在任何时候都花了很多时间和精力来学习阿拉伯语。

但最终,它并没有巧妙地掌握这门语言。

因此,我们可以知道阿拉伯语有多难学,更不用说自学阿拉伯语了。

自学阿拉伯语是不可能的。

只要你有两个条件,你就必须有强烈的兴趣和正确的方法。

阿拉伯语的复杂性和难以掌握使学习者在学习时必须记住大量的动词和语法规则。

世界上公认的难以学习的语言是汉语,但汉语是使用人口最多的语言。

除了汉语,俄语也很难被大多数人抱怨和学习。

事实上,俄语是一种很容易学习的语言,当它开始很难学习。

大多数人认为这只是两点。

第一点是学生不能建立新的字母系统和发音。

第二点是俄罗斯语法的变化很容易让学生记住。

事实上,学习一门语言最重要的是练习、听、说、读、写,掌握一门语言并不难。

加入收藏
               

VC++语言实现MFC剪贴板操作实例代码

点击下载文档

格式为doc格式

  • 账号登录
社交账号登录