GetKeyword メソッドを初期化します。
サポートされているプラットフォーム: Windows のみ
VBA:
object.InitializeUserInput Bits [, Keyword]
タイプ: Utility
このメソッドが適用されるオブジェクト。
アクセス: 入力のみ
タイプ: 整数型
一度に複数の条件を設定するには、値を自由に組み合せて加算します。この値が含まれない場合、または 0 に設定されている場合は、コントロール条件は適用されません。
アクセス: 入力のみ; オプション
タイプ: バリアント型(文字列の配列)
次のユーザ入力メソッドが認識するキーワード。
戻り値はありません。
GetKeyword メソッドを呼び出す前に、このメソッドでキーワードが定義されていなければなりません。ユーザ入力メソッドの中には、通常の戻り値だけでなくキーワード値を受け取るものがあります。ただし、InitializeUserInput メソッドを呼び出してキーワードを定義しておかなければなりません。キーワードを受け取ることができるユーザ入力メソッドは、GetKeyword、GetInteger、GetReal、GetDistance、GetAngle、GetOrientation、GetPoint、GetCorner です。
VBA:
Sub Example_InitializeUserInput()
' This example prompts for user input of a point. By using the
' InitializeUserInput method to define a keyword list, the example can also
' return keywords entered by the user.
AppActivate ThisDrawing.Application.Caption
On Error Resume Next
' Define the valid keywords
Dim keywordList As String
keywordList = "Line Circle"
' Call InitializeUserInput to set up the keywords
ThisDrawing.Utility.InitializeUserInput 128, keywordList
' Get the user input
Dim returnPnt As Variant
returnPnt = ThisDrawing.Utility.GetPoint(, vbLf & "Enter a point [Line/Circle]: ")
If Err Then
If StrComp(Err.Description, "User input is a keyword", 1) = 0 Then
' One of the keywords was entered
Dim inputString As String
Err.Clear
inputString = ThisDrawing.Utility.GetInput
MsgBox "You entered the keyword: " & inputString
Else
MsgBox "Error selecting the point: " & Err.Description
Err.Clear
End If
Else
' Display point coordinates
MsgBox "The WCS of the point is: " & returnPnt(0) & ", " & returnPnt(1) & ", " & returnPnt(2), , "GetInput Example"
End If
End Sub
Visual LISP:
(vl-load-com)
(defun c:Example_InitializeUserInput()
;; This example prompts for user input of a point. By using the
;; InitializeUserInput method to define a keyword list, it can also
;; return keywords entered by the user.
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; Define the valid keywords
(setq keywordList "Line Circle")
;; Call InitializeUserInput to set up the keywords
(vla-InitializeUserInput (vla-get-Utility doc) 128 keywordList)
;; Get the user input
(setq returnPntOrErr (vl-catch-all-apply 'vla-GetPoint (list (vla-get-Utility doc) nil "Enter a point [Line/Circle]: ")))
(if (= (type returnPntOrErr)'VL-CATCH-ALL-APPLY-ERROR)
(progn
(if (= (vl-catch-all-error-message returnPntOrErr) "Automation Error. User input is a keyword")
(progn
(setq inputString (vla-GetInput (vla-get-Utility doc)))
(alert (strcat "You entered the keyword: " inputString))
)
(alert "User pressed ESC or unknown input was provided.")
)
)
;; Display point coordinates
(progn
(setq returnPnt (vlax-safearray->list (vlax-variant-value returnPntOrErr)))
(alert (strcat "The WCS of the point is: " (rtos (nth 0 returnPnt) 2) ", " (rtos (nth 1 returnPnt) 2) ", " (rtos (nth 2 returnPnt) 2)))
)
)
)