- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
OLE剪贴板技术
---- 一、概述 ---- 在Windows操作系统中存在两种剪贴板机制:Windows标准剪贴板和OLE剪贴板机制。 ---- 标准的Windows剪贴板是一个被所有Windows应用程序共享的系统服务,因此它并没有自己的句柄或类。但你可以通过CWnd类的成员函数来管理剪贴板。 ---- 自从OLE(Object Linking and Embedding,对象链接和嵌入)诞生之后,Windows操作系统中便出现了第二种剪贴板机制——OLE剪贴板机制。标准的Windows剪贴板API(Application Programming Interface,应用程序编程接口)依然可用,但是他已经被OLE数据传输机制来实现了。OLE支持UDT(Uniform Data Transfer,统一数据传输),并可以通过拖放操作实现剪贴板的剪切、复制和粘贴等操作。OLE剪贴板除了拥有标准Windows剪贴板的性能外,还支持传输用户自定义的剪贴板格式,并能够在传输数据时绑定OLE格式(如字体、字号等)。OLE剪贴板机制将成为更为主要的数据传输机制。 ---- 本文将简要叙述标准Windows剪贴板的实现,并将重点放在讨论如何通过Visual C++实现OLE剪贴板上。 ---- 二、选择适当的剪贴板机制 ---- 在选择使用何种剪贴板机制时通常应遵循下面的原则: ---- 如果应用程序在将来又可能具有新的性能(比如现在只需要传输纯文本,但将来有可能需要另外传输字体等特性),那么使用OLE剪贴板。 ---- 如果你正在使用一个OLE应用程序,或者你希望使用任何OLE特性(如拖放等)那么你应当使用OLE剪贴板机制。 ---- 如果你提供了OLE格式(如字体、字号等),那么使用OLE剪贴板机制。 ---- 三、使用Windows标准剪贴板 ---- 大多数Windows下的应用程序支持剪切或复制数据到Windows剪贴板中以及从剪贴板粘贴数据至目的地。在这个过程中,剪贴板数据格式在多种应用程序之间发生了变化。系统构架仅仅通过实现一些有限的类来支持一些有限的剪贴板格式,下表列出了Windows标准剪贴板支持的格式(第一列“值”将在下面的程序代码中使用)。 值 含义 CF_BITMAP一个对应于位图的句柄(HBITMAP)。 CF_DIB 一个包含BITMAPINFO结构并且 跟着位图数据的内存对象。 CF_DIF 数据交互格式 CF_DSPBITMAP有一个私有格式的位图显示格式。 CF_DSPENHMETAFILE有一个私有格式的增强的元文件的显示格式。 CF_DSPMETAFILEPICT有一个私有格式的元图显示格式。 CF_DSPTEXT有一个私有格式的文本显示格式。 CF_ENHMETAFILE一个增强的元文件(HENHMETAFILE结构)的句柄。 CF_GDIOBJFIRST到 CF_GDIOBJLAST应用软件定义 的一系列GDI对象的整型值。 CF_HDROP一个HDROP类型的句柄,用来标识一列文件。 CF_METAFILEPICT一个使用METAFILEPICT结构定义的元图文件的句柄。 CF_OEMTEXT预定义的字符的文本格式,每一行都绑定 一个CR-LF字符,并且用一个空字符表示数据结尾。 CF_OWNERDISPLAY剪贴板拥有者的显示格式, 剪贴板的拥有者必须显示并且更新剪贴板的观察器窗口, 并且接收WM_ASKCBFORMATNAME、WM_HSCROLLCLIPBOARD、 WM_PAINTCLIPBOARD、WM_SIZECLIPBOARD以及 WM_VSCROLLCLIPBOARD等消息,hMem参数必需为NULL。 CF_PALETTE调色板的句柄 CF_PRIVATEFIRST到CF_PRIVATELAST私有的剪贴板格式的整型值。 CF_RIFF能够提交比CF_WAVE标准波表文件格式更为复杂的音频数据 CF_SYLK微软公司的SYLK(Symbolic Link,符号链接)格式 CF_TEXT文本格式 CF_WAVE使用一种标准波表文件格式如11kHz或22kHz等 PCM(Pulse Code Modulation,脉冲编码调制器)提交音频数据。 CF_TIFFTIFF图形格式 CF_UNICODETEXTUnicode文本格式( 注意:仅适用于Windows NT或Windows 2000操作系统) ---- 表1 常用的标准剪贴板格式 ---- 要编写一个实现剪切和复制命令的函数,就要在你的应用程序中实现选定操作;要编写一
文档评论(0)