The CyberSecretary Object Library includes properties for getting user input รป either free-form text input, or an item selected from a drop-down list. 

Selecting Items From A List

.List = "Item1|Item2|Item3|...|ItemN"
 
Setting this property causes a drop-down list box to appear, displaying the items shown in the list.  The items shown in the list should be separated by vertical bars.  Set the .ListSelection property to specify which item in the list is initially displayed; by default this is the first item in the list.  Read the .ListSelection property to determine which item was selected by the user.  Set this property to an empty string (e.g. .List = ""), or invoke the .Clear method, to make the list box disappear.

.ListSelection

Setting this property controls which item in a list is displayed as the default.  If this property is not set, the first item in the list is shown.  Read this property to determine which item in the list was selected by the user.  You can then use a Select Case or other appropriate logical structure for taking appropriate actions depending on what item was selected by the user.  For example:

With MySecretary
    .Icon = "Earth"
    .Message = "Which Internet site would you like" _
        + "to visit, <N>?"

    .List = "Yahoo!|Slipstick|Altavista"
    .ShowOKCancel
    .Show
    If .Button = CS_OKBUTTON then
        Select Case .ListSelection
        Case "Yahoo!"
            .OpenFile "http://my.yahoo.com"
        Case "Slipstick"
            .OpenFile "http://www.slipstick.com"
        Case "Altavista"
            .OpenFile "http://altavista.digital.com"
        End Select
    End If
End With

.RemoveListSelection

This method removes the currently selected item from the drop-down list.  This will usually be the item selected by the user, but can be set in code using the .ListSelection method.  This method is mainly useful for macros that call for repeated processing of the same list, where it is necessary or desirable to avoid repeated selection of the same list item.

Getting Text Input

.InputLines = Lines
 
Setting this property causes a free-form text input box to appear.  The size of the free-form text input box is specified by the Lines parameter, and can range from a single line, to as many lines as will fit on your screen.  You can enter default text to be displayed by setting the .UserInput property.  Read the .UserInput property to determine what text was entered by the user.  Set .InputLines = 0 (or invoke the .Clear method) to remove the text box.

.UserInput

Setting this property sets the default text which will appear in the text box created using the .InputLines property.  Read this property to obtain the text entered by the user and then assign it to a variable (string or variant).