v5.0
Exposes VBScript's InputBox to other scripting languages. This
is a very useful little function for getting information from a
user. It displays a modal dialog box with a question and an edit
box for the user to enter some data.
Note: When running in batch mode XSIInputBox will just return the
value of the Default argument.
Tip: To collect more sophisticated information from the user, for
example file paths, colors, or options out of a list, it is better
the create a CustomProperty or use the
services of the XSIUIToolkit or XSIDialog objects.
oString = XSIInputBox( [Prompt], [Title], [Default] ); |
The String entered by the user, or an empty string if the user cancelled or chose not to enter anything.
| Parameter | Type | Description |
|---|---|---|
| Prompt | String | Text that tells the user what they should type in |
| Title | String | Text to show in the title bar of the dialog box |
| Default | String | A suggested response for the user, which is automatically returned if running in batch mode. |
/*
Example showing how to ask the user for a unique name for a grid object. A loop is used to give
the user another chance if they pick the name of an existing object
*/
while(true)
{
var strObjName = XSIInputBox(
"Please pick a name for the new object",
"Time for a Decision",
"Foo" ) ;
if ( strObjName != "" )
{
var oExisting = Dictionary.GetObject( strObjName, false ) ;
if ( oExisting == null )
{
ActiveSceneRoot.AddGeometry( "Grid","MeshSurface", strObjName ) ;
break ;
}
else
{
XSIUIToolkit.MsgBox( "That object already exists\n"+
"You have to think of a new name" ) ;
}
}
else
{
// User cancelled
break ;
}
}
|
'
' Example showing how to ask the user for a unique name for a grid object. A loop is used
' to give the user another chance if they pick the name of an existing object
'
do while true
strObjName = XSIInputBox( _
"Please pick a name for the new object", _
"Time for a Decision", _
"Foo" )
if strObjName <> "" then
set oExisting = Dictionary.GetObject( strObjName, false )
if typename( oExisting ) = "Nothing" then
ActiveSceneRoot.AddGeometry "Grid","MeshSurface", strObjName
exit do
else
XSIUIToolkit.MsgBox( "That object already exists" & vbCrLf & _
"You have to think of a new name" )
end if
else
' User cancelled
exit do
end if
loop
|