CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 文档中心

setfunhelp(AutoLISP)

2023-1-7 17:48| 发布者: admin| 查看: 248| 评论: 0|来自: AutoCAD

摘要: 向帮助工具注册用户定义的命令,以便在用户请求有关该命令的帮助时调用相应的帮助文件和主题

向帮助工具注册用户定义的命令,以便在用户请求有关该命令的帮助时调用相应的帮助文件和主题

支持的平台:视窗和 Mac OS

签名

(setfunhelp c:fname [helpfile [topic [command]]])
c:fname

类型:字符串

用户定义的命令(函数)。必须包含前缀。C:XXXc:

帮助文件

类型:字符串

帮助文件名。帮助文件参数不需要文件扩展名。如果提供了文件扩展名,AutoCAD 将仅查找具有指定确切名称的文件。

如果未提供文件扩展名,AutoCAD 将查找扩展名为 的帮助文件中文名。如果未找到该名称的文件,AutoCAD 将查找扩展名为 .HLP。

主题

类型:字符串

帮助主题 ID。如果要调用 CHM 文件中的主题,请提供不带扩展名的文件名;AutoCAD 添加了.htm扩展名。

命令

类型:字符串

“帮助”窗口的初始状态。命令参数是 uCommand(在 HTML 帮助中)或 fuCommand(在 WinHelp) 中由 HtmlHelp() 和 WinHelp() 函数使用的字符串,如 Microsoft Windows SDK 中定义的那样。

对于 HTML 帮助文件,命令参数可以是HH_ALINK_LOOKUP的,也可以是HH_DISPLAY_TOPIC的。对于 Windows 帮助文件,命令参数可以是HELP_CONTENTS、HELP_HELPONHELP或HELP_PARTIALKEY。

返回值

类型:字符串或零

c:fname,如果成功;否则。nil

此函数仅验证c:fname参数是否具有前缀。它验证函数是否存在,也不验证提供的其他参数的正确性。c:c:fname

例子

以下示例说明了 of 的用法,方法是定义一个简单的函数,并将该函数与 AutoCAD 帮助文件 (acad.chm) 中的 Entget 主题相关联:setfunhelpsetfunhelp

(defun c:foo ()
  (getstring "Press F1 for help on the foo command:")
)
(setfunhelp "c:test" "acad.chm" "entget")

加载此代码后,发出命令然后按 F1 将显示圆形主题。foo

此示例有效,但没有实际用途。在现实世界中,您将创建自己的帮助文件,并将该帮助文件和主题与您的函数相关联。

定义一个名为的函数:test

(defun c:test()(getstring "\nTEST: " )(princ))
C:TEST

将函数与使用字符串“line”的帮助调用相关联:

(setfunhelp "c:test" "acad_acr.chm" "line")
"c:test"

运行命令并在提示符下按 F1;您应该会看到 AutoCAD LINE 命令的帮助主题。test

注意:当您使用函数定义函数时,它会从注册者(如果存在)中删除该函数的名称。因此,应该只在调用之后调用,它定义了用户定义的命令。defunC:XXXsetfunhelpsetfunhelpdefun

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )

GMT+8, 2024-5-19 13:17

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部