OLEDragOver 事 件
当 数据 拖动到一个 放落目标 上 并且 放落目标 的 OLEDropMode 属性 设置为 1 – 启用时发生该事件
语 法
PROCEDURE Ob jec t.OLEDragOver LPARAMETERS oDataObject , nEffect , nButton , nShift ,
nXCoord , nYCoord , nState
参 数 描 述
oDataObject
对 OLE 拖 放 DataObject 的 一 个 对 象 引 用 同 GetData 和 GetFormat 方 法 一 起使 用 可 以 返 回 DataObject 中 的 数 据 和 数 据 格 式
nEffect
传 递 给 OLEGiveFeedback 事 件 的 一 个 值 表 明 当 数 据 放 落 到 目 标 上 时 采 取 的动 作 nEffect 的 初 始 值 表 明 拖 动 源 支 持 的 OLE 拖 放 操 作 下 表 列 出 了nEffect 的 值 以 及 每 种 动 作 的 说 明
nEffect Foxpro.h constant
-
DROPEFFECT_ NONE
-
DROPEFFECT_C OPY
-
DROPEFFECT_ MOVE
4 DROPEFFECT_L INK
说 明
放落目标 不接受 数据 或者取消了 OLE 放 落 操作
数据从 拖动源 复制到 放落目标 中数据从 拖动源 移动到 放落目标 中数据从 拖动源 链接到 放落目标
nButton
包 含 一 个 数 字 该 数 字 指 定 了 为 将 数 据 放 落 到 目 标 上 放 开 了 哪 个 鼠 标 键
1 左 键 2 右 键 或 4 中 间 键
nShift
包 含 一 个 数 字 该 数 字 指 定 了 将 数 据 放 落 到 目 标 上 时 辅 助 键 的 状 态 有 效的 辅 助 键 是 SHIFT CTRL 和 ALT 下 表 列 出 了 对 应 于 单 个 辅 助 键 的 nShift 返 回 值
nShift 辅 助 键
-
SHIFT
-
CTRL
4 ALT
如果当按下鼠标时按住了多个辅助键 则 nShift 参数 包含 这些辅助键的值的和 例 如 释放鼠标键时按下 CTRL 键 nShift 参数包含 2 但是如果在释放鼠标键时按下CTRL+ALT nShift 参数包含 6
nXCoord , nYCoord
包 含 当 释 放 鼠 标 将 数 据 放 落 到 目 标 上 时 鼠 标 指 针 在 表 单 中 的 水 平
( nXCoord ) 和 垂 直 ( nYCoord ) 位 置 这 些 坐 标 是 按 表 单 的 坐 标 系 表 达 的 表单 的 ScaleMode 属 性 指 定 了 度 量 单 位
nState
包 含 一 个 数 值 该 数 值 指 定 了 数 据 被 拖 动 的 方 向 – 到 控 件 或 对 象 中 到 控 件或 对 象 的 内 部 或 到 控 件 或 对 象 的 外 部 下 表 列 出 了 nState 的 值
nState 说 明
- 数据 被拖动到 控件或对象 中 当 nState 为零时 可以设置
OLEDropEffects 和 OLEDropHasData 属性
-
数据
被拖动到 控件或对象 的外部
-
数据
被拖动到 控件或对象 的内部
说 明
OLEDragOver 是一个 放落目标 的 事件 只有当 控件或对象 的 OLEDropMode 属性 设置为 1 – 启用时才发生 如 果 OLEDropMode 属性 设置为 0 – 禁止或 2 – 传递到容器 则不发生这个 事件
注 意 应该避免在 OLEDragOver 事件 中使用 WAIT WINDOW 和 MESSAGEBOX( )
这样的 命令和函数 创造等待状态
应 用 于
复选框 组合框 命令按钮 命令按钮组 容器对象 控件对象 编辑框 表单 表格 图像 标签 线条 列表框 选项按钮 选项按钮组 页面 页框 项目挂接对象 形状 微调 文本框 工具栏
请 参 阅
OLE Drag-and-Drop 概 览 , OLEGiveFeedBack 事 件 , OLEDropEffects 属 性 , OLEDropHasData 属 性 , OLEDropMode 属 性