AutoLISPでは、コマンド実行時にダイアログが表示されず、コマンドラインで処理されてしまうことがあります。
特にPLOTやBLOCKなどのコマンドは、LISP内から実行するとダイアログが抑制されることがあります。
そのような場合に使うのが、(initdia)関数です。
(initdia) は、次に実行するコマンドでダイアログ表示を有効にする関数です。
コマンド実行の直前に入れることで、通常と同じダイアログ画面を表示させることができます。
(defun c:IP ()
(initdia)(command-s "._PLOT")
)すぐできる設定手順
- コマンド「IP」を入力
- 印刷設定ダイアログが表示される
仁(じん)画像付きのSTEPは、下で確認できますよ!
Contents
操作手順
STEP


- コマンド「IP」を入力します
- 印刷設定ダイアログが表示されます
STEP


- このまま普通に印刷することができます
(initdia)を使わなかった場合
以下のように(initdia)を使わなかった場合の処理を見てみます。
(defun c:IP ()
(command-s "._PLOT")
)

(initdia)を使用しなかった場合は、コマンド「IP」入力後、印刷ダイアログは表示されず、コマンドラインで処理されてしまいます。
※コマンドラインで処理地帯場合は(initdia)を入れる必要はありません。



ダイアログ操作が必要なときだけ使用するのね。
まとめ
- initdiaはダイアログ表示を有効にする関数
- コマンドの直前に入れることで通常操作になる
- PLOTやBLOCKなどで特に有効
ダイアログ操作を前提とする場合は、initdiaを使うのが基本です。

でダイアログ強制表示.png)
コメント