AppWindow.EnableOleDropTarget 方法 | |
将窗口注册为 OLE 拖放目标。
命名空间:
VO
程序集:
VOGUIClasses (在 VOGUIClasses.dll 中) 版本:2.22 GA
语法 VIRTUAL METHOD EnableOleDropTarget(
lEnable
) AS USUAL CLIPPER
[ClipperCallingConventionAttribute(new string[] { ... })]
public virtual __Usual EnableOleDropTarget(
__Usual lEnable = default
)
查看代码参数
- lEnable (Optional)
- 类型:__Usual
一个逻辑值,指定是否启用 (TRUE) 或禁用 (FALSE) 窗口作为拖放目标。
返回值
类型:
__Usual
如果成功则返回 TRUE;否则返回 FALSE。
备注
使用 AppWindow:EnableOLEDropTarget() 注册为 OLE 拖放目标的窗口可以处理 OLE 拖放事件,并在响应此类事件时创建新的 OLE 对象。
在相关的处理程序中,OLEDragEvent 对象作为参数传递,可以通过调用 OLEObject:CreateFromOLEDragEvent() 来创建新的 OLE 对象。
示例
以下代码启用数据窗口作为拖放目标,并在其 OLEDrop 处理程序中创建一个新的 OLE 对象。它还检查 OLE 对象的名称以仅允许 WordPad 文档:
1METHOD EnableOLEDropTarget CLASS DropTargetDataWindow
2 SELF:EnableOLEDropTarget(TRUE)
3
4METHOD OLEDrop(oOLEDragEvent) CLASS MyChild
5 LOCAL oOLE AS OLEObject
6 LOCAL lRet AS LOGIC
7
8 IF oOLEDragEvent:ObjectName == "WordPad Document"
9 oOLE := OLEObject{SELF}
10
11 oOLE:AllowInPlace := TRUE
12 oOLE:AllowResize := TRUE
13
14 IF oOLE:CreateFromOLEDragEvent(oOLEDragEvent)
15 oOLE:Origin := oOLEDragEvent:Position
16 oOLE:Show()
17 oOLE:SetFocus()
18 ENDIF
19 ENDIF
参见