CommandTargetExec 事 件
当 Active Document 的宿主应用程序通知 Active Document 要执行的命令时发生
语 法
PROCEDURE Ob jec t.CommandTargetExec
[LPARAMETERS nCommandID , nExecOption , eArgIn , eArgOu t]
参 数 描 述
nCommandID
是 Active Document 的 宿 主 应 用 程 序 向 CommandTargetExec 事 件 传 递 的 一 个 参数 该 参 数 指 出 了 要 执 行 的 命 令 下 表 列 出 了 向 V isual FoxPro 可 处 理 事 件 传的 值 以 及 要 执 行 的 相 应 命 令
nCommandID FOXPRO.H 常 数 命 令
1 CMDID_OPEN 文件 菜单 的 新建 命令
2 CMDID_NEW |
文件 菜单 的 建 命令 |
新 |
---|---|---|
3 CMDID_SAVE |
文件 菜单 的 | 保 |
存 命令 |
||
4 CMDID_SAVEAS |
文件 菜单 的 | 另 |
存为 命令 |
||
5 CMDID_SAVECOPYAS |
文件 菜单 的 | 将 |
6 CMDID_PRINT |
复本保存为 命令 文件 菜单 的 |
打 |
印 命令 |
||
7 CMDID_PRINTPREVIEW |
文件 菜单 的 | 打 |
印预览 命令 |
||
8 CMDID_PAGESETUP |
文件 菜单 的 | 页 |
面设置 命令 |
||
9 CMDID_SPELL |
工具 菜单的 | 拼 |
10 CMDID_PROPERTIES |
写检查 命令 文件 菜单 的 |
属 |
性 命令 |
||
11 CMDID_CUT |
编辑 菜单的 | 剪 |
切 命令 |
-
CMDID_COPY
编辑 菜单的 复制 命令
-
CMDID_PASTE
编辑 菜单的 粘贴 命令
-
CMDID_PASTESPECIAL
编辑 菜单的 选
择性粘贴 命令
-
CMDID_UNDO
编辑 菜单的 取消 命令
-
CMDID_REDO
编辑 菜单的 恢复 命令
-
CMDID_SELECTALL
编辑 菜单的 全选 命令
-
CMDID_CLEARSELECTION
编辑 菜单的 清
除 命令
-
CMDID_ZOOM
视图 菜单的 显示比例 命令
-
CMDID_GETZOOMRANGE
获取 视图 菜单的
显示比例 命令 适用的缩放范围
- CMDID_UPDATECOMMANDS 通知 Active
Document 状态的改变
-
CMDID_REFRESH
请 求 Active Document 刷新它的显示 由 Active Document 完成
-
CMDID_STOP
请 求 Active Document 停止它的处理
-
CMDID_HIDETOOLBARS 请求 Active
Document 隐藏工具栏 由 Active Document 完成
- CMDID_SETPROGRESSMAX 设置 进程指示器的
最大值
- CMDID_SETPROGRESSPOS 设置 进程指示器的
当前值
- CMDID_PROGRESSTEXT 设置 进程指示器中
包含的文本
-
CMDID_SETTITLE
设置 标题栏文本
-
CMDID_DOWNLOADSTATE 当宿主程序下载状
态更改时发送
- CMDID_STOPDOWNLOAD 当执行时停止下
载
- CMDID_ONTOOLBARACTIV ATED
- CMDID_ENABLE_INTERACT ION
容器的一个工具栏获得了焦点
由 Active Document
宿主应用程序发送 告诉 Active
Document 或者暂停或者重新开始 Active Document 中的任何多媒体 音频或动 画
如 果 在 Active Document 一个控件中运行的多媒体文件应该重新开始
则 eArgIn 返回
真 (.T.) 如果该多媒体文件应该暂
停 则 eArgIn 返回假 (.T.)
Internet Explorer 4.0
使用这个命令 当一个 Active Document 最小化或完全被另一个窗口覆盖时通知该Active Document 这样 该 Active Document 可以暂停播放多媒体信息
- CMDID_ONUNLOAD
当定位到另一个站点之前 或 Active Document 宿主关闭之前由该宿主程序发送 将 eArgOut 设置为 假 (.T.)
可以防止一个 Active Document 被它的宿主程序关闭 将eArgOut 设置为
nExecOption
真 (.T.) 可以允许一个 Active Document 由它的宿主程序关闭
传递给 CommandTargetExec 事件 的应该参数 表明指定命令所需的默认动作下表列出了 nExecOption 的值 以及要执行的动作
nExecOption |
FOXPRO.H Constant |
动 作 |
---|---|---|
0 |
CMDEXECOPT_DODEFAULT |
使用 默认的 行为 |
提示或不提示用户 | ||
输入 |
||
1 |
CMDEXECOPT_PROMPTUSE R |
当获得用户输入之后执行命令 |
2 |
CMDEXECOPT_DONTPROMP |
执行命令而不提示 |
TUSER |
用户 例如 单击 | |
打印 工具栏按 | ||
钮 会立即打印一 | ||
篇文档 而不需用 |
户的输入
续 表
3 CMDEXECOPT_SHOWHELP 显示相应命令的帮
助信息 而实际不执行该 命令
eArgIn
从 Active Document 宿 主 程 序 传 递 到 CommandTargetExec 事 件 的 参 数 通 常 这 个 参 数 是 null 值 当 nCommandID 是 36 时 例 外 当 nCommandID
是 36 时 eArgIn 包 含 一 个 值 有 关 传 递 给 eArgIn 的 逻 辑 值 的 详 细 内 容 请参 阅 nCommandID 参 数 说 明 中 的 表 格
eArgOut
从 CommandTargetExec 事 件 返 回 给 Active Document 宿 主 程 序 的 一 个 输 出 参数 通 常 这 个 参 数 是 null 值 当 nCommandID 是 3 7 时 例 外 当nCommandID 是 3 7 时 表 明 Active Document 宿 主 程 序 将 要 关 闭 Active Document 或 定 位 到 另 一 个 站 点 可 以 将 eArgOut 设 置 为 假 ( .T .) 以防 止 Active Document 被 宿 主 程 序 关 闭 将 eArgOut 设 置 为 真 ( .T .) 可以 允 许 Active Document 被 宿 主 程 序 关 闭
说 明
CommandTargetExec 事件 允许 Active Document 根据宿主程序发送的命令执行自定义动作 这些命令可能是由于响应用户选择一个菜单项或工具栏项而发送的 或者是由于触发了 Active Document 宿主程序 中的一个 事件 而发送的 从 CommandTargetExec 事件 的返回值会通知 Active Document 宿主程序 您是否处理过该命令 如果您没有处理过该命令 Active Document 宿主程序 会执行该命令默认的过程
下表列出了 从 CommandTargetExec 事件 返回的值
返 回 值 |
FOXPRO.H |
常 |
数 |
命 令 动 作 |
---|---|---|---|---|
0 |
CMD_OK |
Active Document 处理了该命令 |
||
当 Active Document 曾经处理了由 nCommandID 指定的命令时返回该 |
||||
值 例如 如果选择了宿主程序中 文 |
件 菜单 中的 打开 命令 则您的
Active Document 可以在CommandTargetExec 事件 中确定nCommandID 为 1 然后执行自己的打开文件例程 可能是使用 Visual
FoxPro GETFILE |
函数 |
||
---|---|---|---|
2 CMD_NOTSUPPO |
Active Document |
不支持该 命令 |
|
RTED |
Active Document |
不支持该 命令 |
当 |
Active Document nCommandID |
不能识别 指定的 命令 时 |
返回这 |
|
个值 |
|||
3 CMD_DISABLED |
Active Document |
废止了该 命令 |
当 nCommandID 指定的 命令 正被废止时 或 Active Document 不能执行该 命令时 返回这个值
续 表
- CMD_NOHELP Active Document 没有该 命令 的帮助信
息
当 Active Document 没有 nCommandID
指定的 命令 的帮助信息时 返回这个值
- CMD_CANCELE D
用户取消了该 命令 的执行
当 Active Document 试图处理nCommandID 指定的 命令 而用户取消了该操作时 返回这个值
Active Document 不支持该 命令 当 Active Document 不能识别 nCommandID 指定的命令 时 返回这个值
对于 CommandTargetExec 和 CommandTargetQuery 事件 Visual FoxPro 利用IoleCommandTarget 接口 有关这些事件是如何实施的详细 信息 可以在 MSDN library 中搜索 Io leCommandTarget
应 用 于
ActiveDoc 对象
请 参 阅
CommandTargetQuery 事 件