将数据放在 OLE 拖放 Data对象 中。只在设计时可用。
语法
oDataObject.SetData(eData [, nFormat | cFormat])
参数
eData
指定放在 Data对象中的数据。如果省略可选的 nFormat 和 cFormat 参数,Visual FoxPro 按 CF_TEXT 和 CFSTR_OLEVARIANT 格式将数据放在 Data对象 中。如果 eData 是一个数组,需要在 eData 前面加一个 @ 记号。数组是按 CFSTR_OLEVARIANTARRAY 格式放在 Data对象 中的。如果 eData是一个对象引用或通用字段,或者是包含对象引用的数组,则会产生一条错误信息。
nFormat | cFormat
指定放在 Data对象 中的数据的格式。下表列出了一些常用数据格式的值,以及每种格式的说明。使用 cFormat 也可以指定自定义格式。这时,eData必须是使用 CREATEBINARY() 创建的字符型或二进制型。
数据格式* | nFormat | cFormat | 说明 |
CF_TEXT | 1 | 文本格式。 |
CF_OEMTEXT | 7 | 包含 OEM 字符集中字符的文本格式。 |
CF_UNICODETEXT | 13 | Unicode 文本格式,只在Windows NT 下可用。 |
CF_FILES or CF_HDROP | 15 | 一个标识一组文件的句柄,例如从 Windows 资源管理器拖来的一组文件。 |
CF_LOCALE | 16 | 与剪贴板上文本相关的本地标识符的句柄。 |
CFSTR_OLEVARIANTARRAY | "OLE Variant Array" | 一个 Visual FoxPro 数组。使用这个格式在一次拖放中可以传送多个值。例如,这个格式可以用于将列表框中的一些项拖动到另一个列表框中。 |
CFSTR_OLEVARIANT | "OLE Variant" | 一个 Visual FoxPro 变量。Visual FoxPro 中的所有数据类型都可以用变量代表。这个格式可以用于拖放 Visual FoxPro 数据,并且不丢失数据类型。 |
CFSTR_VFPSOURCEOBJECT | "VFP SourceObject" | 对一个 Visual FoxPro 对象的引用。 |
* 在 FOXPRO.H 中定义。
说明
setdata 方法只能在 OLEStartDrag 事件中执行。