Microsoft
Windows剪贴簿允许把资料从一个程式传送到另一个程式中。它的原理相对而言比较简单,把资料存放到剪贴簿上的程式或从剪贴簿上取出资料的程式都无须太多的负担。Windows
98和Microsoft Windows NT都提供了剪贴簿浏览程式,该程式可以显示剪贴簿的目前内容。
许多处理档案或者其他资料的程式都包含一个「Edit」功能表,其中包括「Cut」、「Copy」和「Paste」选项。当使用者选择「Cut」或者「Copy」时,程式将资料传送给剪贴簿。这个资料使用某种格式,如文字、点阵图(一种按位元排列的矩形阵列,其中的位元与平面显示的图素相对应)或者metafile(用二进位元数值内容表示的绘图命令集)等。当使用者从功能表中选择「Paste」时,程式检查剪贴簿中包含的资料,看看使用的是否是程式可以接受的一种格式。如果是,那么资料将从剪贴簿传送到程式中。
如果使用者不发出明确的指令,程式就不能把资料送入或移出剪贴簿。例如,在某个程式中执行剪下或复制(或者按Ctrl-X及Ctrl-C)操作的使用者,应该能够假定资料将储存在剪贴簿上,直到下次剪下或复制操作为止。
回忆一下第十和第十一章所示的POPPAD程式的修订版中,我们加上了「Edit」功能表,但是在那边这功能表的作用只是发送讯息给编辑控制项而已。多数情况下,处理剪贴簿并不方便,您必须自己呼叫剪贴簿传输函式。
本章集中讨论将文字传入和移出剪贴簿。在後面的章节里,我将向您展示如何用剪贴簿处理点阵图(第十四、十五和十六章)和metafile(第十八章)。
剪贴簿的简单使用
我们由分析把资料传送到剪贴簿(剪下或复制)和存取剪贴簿资料(粘贴)的程式码开始。
标准剪贴簿资料格式
Windows支援不同的预先定义剪贴簿格式,这些格式在WINUSER.H定义成以CF为字首的识别字。
首先介绍三种能够储存在剪贴簿上的文字资料型态,以及一个与剪贴簿格式相关的资料型态: