ユーザ定義コマンドをヘルプ機能付きで登録し、ユーザからそのコマンドのヘルプが要求されたとき、該当するヘルプ ファイルとトピックを呼び出すようにします。
サポートされているプラットフォーム: Windows および Mac OS
(setfunhelp c:fname [helpfile [topic [command]]])
タイプ: 文字列
ユーザ定義コマンド(C:XXX関数)。接頭の c: が必要です。
タイプ: 文字列
ヘルプ ファイルの名前。helpfile 引数では、ファイル拡張子は必要ありません。ファイル拡張子を指定した場合、指定した名前のファイルのみが検索されます。
ファイル拡張子を指定しないと、AutoCAD は helpfile 引数に拡張子 .chm を付けてファイルを探します。その名前のファイルが見つからない場合、AutoCAD は拡張子 .hlp を付けてファイルを探します。
タイプ: 文字列
ヘルプ トピック ID。拡張子を付けずに CHM ファイル内のトピックを呼び出すと、AutoCAD は拡張子 .htm を追加します。
タイプ: 文字列
[ヘルプ]ウィンドウの初期状態。command 引数を、Microsoft Windows SDK で定義されている HtmlHelp()関数および WinHelp()関数の uCommand(HTML ヘルプ)または fuCommand(Windows ヘルプ)引数で使用される文字列にすることもできます。
HTML ファイルでは、command 引数に、HH_ALINK_LOOKUP または HH_DISPLAY_TOPIC を指定することができます。Windows ヘルプ ファイルでは、HELP_CONTENTS、HELP_HELPONHELP、HELP_PARTIALKEY を指定することができます。
タイプ: 文字列または nil
成功した場合は c:fname。そうでない場合は nil。
この関数は、c:fname 引数に接頭語 c: が付いているかどうかのみをチェックします。 c:fname 関数が存在するかどうかや、他の引数が指定されているかどうかはチェックされません。
setfunhelp 関数の使用法を示した次の例では、簡単な関数を定義し、次に setfunhelp 関数を実行して、その関数に AutoCAD のヘルプ ファイル(acad.chm)の Entget トピックを関連付けています。
(defun c:foo () (getstring "Press F1 for help on the foo command:") ) (setfunhelp "c:test" "acad.chm" "entget")
このコードをロードし、foo コマンドを起動して[F1]を押すと、circle トピックが表示されます。
この例は動作はしますが、実用的ではありません。実際には、独自のヘルプ ファイルを作成し、そのヘルプ ファイルおよびトピックを、独自に作成した関数に関連付けることになります。
次に、test という名前の関数を定義します。
(defun c:test()(getstring "\nTEST: " )(princ)) C:TEST
この関数を、文字列 "line" を使用してヘルプ呼び出しに関連付けます。
(setfunhelp "c:test" "acad_acr.chm" "line") "c:test"
test コマンドを起動し、プロンプトに対して[F1]を押すと、AutoCAD の LINE[線分]コマンドのヘルプ トピックが表示されます。