「Vla-postcommand」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
(ページの作成:「{{AutoLISP}} ; 構文 : (Vla-postcommand''vla-object'' ''commandlist'') ; 機能 : ドキュメントがアイドル状態になったときに、コマンド文字列…」)
 
編集の要約なし
 
(同じ利用者による、間の2版が非表示)
1行目: 1行目:
{{AutoLISP}}
{{AutoLISP}}
; 構文
; 構文
: (Vla-postcommand''vla-object'' ''commandlist'')
: (Vla-postcommand ''vla-object'' ''command'') ; AutoCAD
: (Vla-postcommand ''command'' [ ''echo'' ]) ; BricsCAD




9行目: 10行目:


; 引数
; 引数
:* vla-object … SummaryInfo のVLAオブジェクト
:* vla-object … document のVLAオブジェクト
:* command … ポストするコマンド文字列。
:* echo … エコーフラグ。nil 以外の場合は式がコマンドラインにエコーされる。デフォルト nil。




; 戻り値
; 戻り値
: Authorプロパティの文字列
: nil
 
 
* 注意
コマンドを終了させるために、コマンド文字列の最後に スペースまたは ASCII のキャリッジ リターン制御文字(vbCr)を使用すること。これは、キーボードの[Enter]を押すのと同じ。
このメソッドにより、AutoLISP 式を含む AutoCAD のコマンド ライン機能が処理される。
ドキュメントがアクティブでない場合はアクティブにされる。コマンド文字列は、ドキュメントがフォーカスされると実行される。
このメソッドは非同期で実行される。コマンド文字列を同期的に実行する必要がある場合は、SendCommand メソッドを使用する必要がある。




37行目: 48行目:
   (vla-activate my_doc)
   (vla-activate my_doc)
)
)
; bricscadの場合
(vla-postCommand "._circle 2,2,0 \n")
(vla-postCommand "._circle 2,2,0 \n" T)


</pre>
</pre>

2023年7月19日 (水) 07:02時点における最新版

構文
(Vla-postcommand vla-object command) ; AutoCAD
(Vla-postcommand command [ echo ]) ; BricsCAD


機能
ドキュメントがアイドル状態になったときに、コマンド文字列をポストしてドキュメントで実行する。


引数
  • vla-object … document のVLAオブジェクト
  • command … ポストするコマンド文字列。
  • echo … エコーフラグ。nil 以外の場合は式がコマンドラインにエコーされる。デフォルト nil。


戻り値
nil


  • 注意
コマンドを終了させるために、コマンド文字列の最後に スペースまたは ASCII のキャリッジ リターン制御文字(vbCr)を使用すること。これは、キーボードの[Enter]を押すのと同じ。
このメソッドにより、AutoLISP 式を含む AutoCAD のコマンド ライン機能が処理される。

ドキュメントがアクティブでない場合はアクティブにされる。コマンド文字列は、ドキュメントがフォーカスされると実行される。
このメソッドは非同期で実行される。コマンド文字列を同期的に実行する必要がある場合は、SendCommand メソッドを使用する必要がある。


サンプル
(vl-load-com)
(defun c:Example_PostCommand()
  ;; 現在の図面の AutoCAD コマンド プロンプトに評価用のコマンドを送信する例。
  (setq acadObj (vlax-get-acad-object))
  (setq doc (vla-get-ActiveDocument acadObj))

  ;; Start creating a Circle in the active drawing
  (vla-PostCommand doc "._circle 2,2,0 ")
   
  (alert "CIRCLE command has been started, enter a radius to finish the command.")
)


(defun c:Example_PostCommand2()
  ;; 開いたファイルに対して実行する
  (setq doc (vla-open (vla-get-documents (vlax-get-acad-object)) (strcat "c:\\blocks\\" "my_block.dwg")))
  (vla-postcommand doc (strcat "_.-view " "_top "))
  (vla-activate my_doc)
)


; bricscadの場合
(vla-postCommand "._circle 2,2,0 \n") 
(vla-postCommand "._circle 2,2,0 \n" T)


関連事項