After displaying a custom dialog box for your user, your script must retrieve the values of the dialog controls. You retrieve these values by referencing the appropriate identifiers in the dialog record.
You'll find an example of how to retrieve values from a custom dialog box in the following subsection.
Sample
In the following sample script several of the techniques described earlier in this section have been used.
In this script, the array named ListBox1 is filled with three elements ("Apples", "Oranges", and "Pears"). The default value of TextBox1 is set to 12. A variable named response is used to store information about how the custom dialog box was closed. An identifier named ListBox1 is used to determine whether the user chose "Apples", "Oranges", or "Pears" in the list box named ListBox$. Finally, a Select Case . . . End Select statement is used to display a message box appropriate to the manner in which the user dismissed the dialog box.
Sub Main()
Dim ListBox1$(2) 'Initialize
list box array.
Dim response%
ListBox1$(0) = "Apples"
ListBox1$(1) = "Oranges"
ListBox1$(2) = "Pears"
Begin Dialog UserDialog ,,163,94,"Grocery
Order"
Text 13,6,32,8,"&Quantity:",.Text1 'First
control in
'template
gets the focus.
TextBox 48,4,28,12,.TextBox1
ListBox 12,28,68,32,ListBox1$,.ListBox1
OKButton 112,8,40,14
CancelButton 112,28,40,14
End Dialog
Dim b As UserDialog 'Create
the dialog record.
b.TextBox1 = "12" 'Set default value
of the text box
'to 1
dozen.
response = Dialog(b) 'Display the dialog box.
Select Case response%
Case -1
Fruit$ = ListBox1$(b.ListBox1)
MsgBox "Thank you for ordering " + b.TextBox1 + " " + Fruit$ + "."
Case 0
MsgBox "Your order has been canceled."
End Select
End Sub
8. Use a custom dialog box in a script. |