剪贴板
剪贴板 是一组函数和消息,使应用程序能够传输数据。 由于所有应用程序都可以访问剪贴板,因此可以在应用程序之间或应用程序中轻松传输数据。
本概述不介绍如何复制和粘贴链接的对象或嵌入对象。 有关这些主题的信息,请参阅组件对象模型 (COM) 文档。
在本部分中
名字 | 描述 |
---|---|
关于剪贴板 |
讨论剪贴板。 |
剪贴板格式 |
讨论剪贴板格式。 一个窗口可以在剪贴板上放置多个对象,每个对象都以不同的剪贴板格式表示相同的信息。 用户无需注意剪贴板上对象所用的剪贴板格式。 |
剪贴板作 |
讨论剪贴板作。 在剪切、复制或粘贴数据时,窗口应使用剪贴板。 窗口在剪贴板上放置用于剪切和复制作的数据,并从剪贴板中检索用于粘贴作的数据。 |
HTML 剪贴板格式 |
讨论 HTML 剪贴板格式。 |
使用剪贴板 |
剪贴板查看器窗口显示剪贴板的当前内容,并在剪贴板内容更改时接收消息。 |
剪贴板参考 |
包含 API 参考。 |
剪贴板函数
名字 | 描述 |
---|---|
AddClipboardFormatListener |
将给定窗口置于系统维护的剪贴板格式侦听器列表中。 |
ChangeClipboardChain |
从剪贴板查看器链中删除指定的窗口。 |
CloseClipboard |
关闭剪贴板。 |
CountClipboardFormats |
检索剪贴板上当前不同数据格式的数量。 |
EmptyClipboard |
清空剪贴板并释放剪贴板中的数据句柄。 然后,该函数将剪贴板的所有权分配给当前打开剪贴板的窗口。 |
EnumClipboardFormats |
枚举剪贴板上当前可用的数据格式。 剪贴板数据格式存储在有序列表中。 若要执行剪贴板数据格式的枚举,请对 EnumClipboardFormats 函数进行一系列调用。 对于每个调用,格式 参数指定可用的剪贴板格式,该函数返回下一个可用的剪贴板格式。 |
GetClipboardData |
以指定格式从剪贴板中检索数据。 剪贴板之前必须已打开。 |
GetClipboardFormatName |
从剪贴板中检索指定注册格式的名称。 该函数将名称复制到指定的缓冲区。 |
GetClipboardOwner |
检索剪贴板当前所有者的窗口句柄。 |
GetClipboardSequenceNumber |
检索当前窗口工作站的剪贴板序列号。 |
GetClipboardViewer |
检索剪贴板查看器链中第一个窗口的句柄。 |
GetOpenClipboardWindow |
检索当前打开剪贴板的窗口的句柄。 |
GetPriorityClipboardFormat |
检索指定列表中的第一个可用剪贴板格式。 |
GetUpdatedClipboardFormats |
检索当前支持的剪贴板格式。 |
IsClipboardFormatAvailable |
确定剪贴板是否包含指定格式的数据。 |
OpenClipboard |
打开剪贴板进行检查,并阻止其他应用程序修改剪贴板内容。 |
RegisterClipboardFormat |
注册新的剪贴板格式。 然后,此格式可用作有效的剪贴板格式。 |
RemoveClipboardFormatListener |
从系统维护的剪贴板格式侦听器列表中删除给定窗口。 |
SetClipboardData |
以指定的剪贴板格式将数据置于剪贴板上。 窗口必须是当前剪贴板所有者,并且应用程序必须调用 OpenClipboard 函数。 (响应 WM_RENDERFORMAT 消息时,剪贴板所有者在 调用 SetClipboardData之前,不得调用 OpenClipboard。 |
SetClipboardViewer |
将指定的窗口添加到剪贴板查看器链中。 每当剪贴板内容发生更改时,剪贴板查看器窗口都会收到 WM_DRAWCLIPBOARD 消息。 |
剪贴板消息
名字 | 描述 |
---|---|
WM_CLEAR |
发送到编辑控件或组合框,以从编辑控件中删除当前所选内容(如果有)。 |
WM_COPY |
发送到编辑控件或组合框,以 CF_TEXT 格式将当前选择复制到剪贴板。 |
WM_CUT |
发送到编辑控件或组合框以删除(剪切)当前所选内容(如果有),并在编辑控件中以 CF_TEXT 格式将已删除的文本复制到剪贴板。 |
WM_PASTE |
发送到编辑控件或组合框,将剪贴板的当前内容复制到当前插入点位置的编辑控件。 仅当剪贴板包含 CF_TEXT 格式的数据时,才会插入数据。 |
剪贴板通知
名字 | 描述 |
---|---|
WM_ASKCBFORMATNAME |
通过剪贴板查看器窗口发送到剪贴板所有者,以请求 CF_OWNERDISPLAY 剪贴板格式的名称。 |
WM_CHANGECBCHAIN |
从链中删除窗口时,发送到剪贴板查看器链中的第一个窗口。 |
WM_CLIPBOARDUPDATE |
当剪贴板的内容发生更改时发送。 |
WM_DESTROYCLIPBOARD |
当调用 EmptyClipboard 函数时发送到剪贴板所有者。 |
WM_DRAWCLIPBOARD |
当剪贴板内容发生更改时,发送到剪贴板查看器链中的第一个窗口。 这使剪贴板查看器窗口能够显示剪贴板的新内容。 |
WM_HSCROLLCLIPBOARD |
通过剪贴板查看器窗口发送到剪贴板所有者。 当剪贴板包含 CF_OWNERDISPLAY 格式的数据,并且剪贴板查看器的水平滚动条中发生事件时,会出现这种情况。 所有者应滚动剪贴板图像并更新滚动条值。 |
WM_PAINTCLIPBOARD |
当剪贴板包含 CF_OWNERDISPLAY 格式的数据并且剪贴板查看器的工作区需要重新绘制时,由剪贴板查看器的剪贴板所有者窗口发送到剪贴板所有者。 |
WM_RENDERALLFORMATS |
如果剪贴板所有者延迟呈现一个或多个剪贴板格式,则将其发送到剪贴板所有者,然后再将其销毁。 要使剪贴板的内容可供其他应用程序使用,剪贴板所有者必须以能够生成的所有格式呈现数据,并通过调用 SetClipboardData 函数将数据置于剪贴板上。 |
WM_RENDERFORMAT |
如果剪贴板所有者延迟呈现特定剪贴板格式,并且应用程序已请求该格式的数据,则将其发送到剪贴板所有者。 剪贴板所有者必须以指定格式呈现数据,并通过调用 SetClipboardData 函数将其置于剪贴板上。 |
WM_SIZECLIPBOARD |
当剪贴板包含 CF_OWNERDISPLAY 格式的数据并且剪贴板查看器的工作区已更改大小时,剪贴板查看器的工作区由剪贴板查看器窗口发送到剪贴板所有者。 |
WM_VSCROLLCLIPBOARD |
当剪贴板包含 CF_OWNERDISPLAY 格式的数据,并且剪贴板查看器的垂直滚动条中发生事件时,剪贴板查看器的垂直滚动条中会发送到剪贴板所有者。 所有者应滚动剪贴板图像并更新滚动条值。 |
结构
名字 | 描述 |
---|---|
METAFILEPICT |
定义用于通过剪贴板交换图元文件数据的图元文件图片格式。 |