Поделиться через


Объект Command

[Агент Майкрософт не рекомендуется использовать в Windows 7 и может быть недоступен в последующих версиях Windows.]

Объект Command — это элемент в коллекции Commands . Сервер предоставляет пользователю доступ к объектам Command , когда клиентское приложение становится активным для ввода.

Чтобы получить доступ к свойству объекта Command , необходимо ссылаться на него в его коллекции с помощью свойства Name . В VBScript и Visual Basic можно напрямую использовать свойство Name :

   <i>agent</i>.Characters("<i>CharacterID</i>").Commands("<i>Name</i>").<i>property</i> [= <i>value</i>]

Для языков программирования, которые не поддерживают коллекции, используйте метод Command :

   <i>agent</i>.Characters("<i>CharacterID</i>").Commands.Command("<i>Name</i>").<i>property</i> [= <i>value</i>]

Вы также можете ссылаться на объект Command, создав на него ссылку. В Visual Basic объявите объектную переменную и создайте ссылку с помощью инструкции Set:

   Dim Cmd1 as Object
   ...
   Set Cmd1 = Agent.Characters("MyCharacterID").Commands("SampleCommand")
   ...
   Cmd1.Enabled = True

В Visual Basic 5.0 можно также объявить объект как тип IAgentCtlCommandEx и создать ссылку. Это соглашение обеспечивает раннюю привязку, что приводит к повышению производительности:

   Dim Cmd1 as IAgentCtlCommandEx
   ...
   Set Cmd1 = Agent.Characters("MyCharacterID").Commands("SampleCommand")
   ...
   Cmd1.Enabled = True

В VBScript ссылку можно объявить как определенный тип, но можно по-прежнему объявить переменную и задать для нее значение Command в коллекции:

   Dim Cmd1
   ...
   Set Cmd1 = Agent.Characters("MyCharacterID").Commands("SampleCommand")
   ...
   Cmd1.Enabled = True

Команда может отображаться во всплывающем меню символа и окне "Команды" или в обоих вариантах. Чтобы появиться во всплывающем меню, он должен иметь подпись, а для свойства Visible задано значение True. Кроме того, свойству Visible объекта коллекции Commands также должно быть присвоено значение True. Чтобы появиться в окне "Команды", у команды должны быть заданы свойства Caption и Voice . Обратите внимание, что элементы всплывающего меню символа не изменяются при отображении меню. Если вы добавляете или удаляете команды или изменяете их свойства при отображении всплывающего меню символа, в меню отображаются эти изменения при следующем отображении. Однако окно команд динамически отражает все внесенные вами изменения.

В следующей таблице показано, как свойства команды влияют на ее представление.

Свойство Caption

Свойство Voice-Caption

Свойство voice

Видимое свойство

Свойство Enabled

Отображается во всплывающем меню символа

Отображается в окне "Команды"

Да

Да

Да

True

True

Обычный, с помощью заголовка

Да, использование VoiceCaption

Да

Да

Да

True

Неверно

Отключено с помощью заголовка

Нет

Да

Да

Да

Неверно

True

Не отображается

Да, использование VoiceCaption

Да

Да

Да

Неверно

Неверно

Не отображается

Нет

Да

Да

Нет

True

True

Обычный, с помощью заголовка

Нет

Да

Да

Нет

True

Неверно

Отключено с помощью заголовка

Нет

Да

Да

Нет

False

True

Не отображается

Нет

Да

Да

Нет

Неверно

Неверно

Не отображается

Нет

Нет

Да

Да

True

True

Не отображается

Да, использование VoiceCaption

Нет

Да

Да

True

Неверно

Не отображается

Нет

Нет

Да

Да

Неверно

True

Не отображается

Да, использование VoiceCaption

Нет

Да

Да

Неверно

Неверно

Не отображается

Нет

Нет

Да

Нет

True

True

Не отображается

Нет

Нет

Да

Нет

True

Неверно

Не отображается

Нет

Нет

Да

Нет

False

True

Не отображается

Нет

Нет

Да

Нет

Неверно

Неверно

Не отображается

Нет

Да

Нет

Да

True

True

Обычный, с помощью заголовка

Да, использование заголовка

Да

Нет

Да

True

Неверно

Отключено с помощью заголовка

Нет

Да

Нет

Да

Неверно

True

Не отображается

Да, использование заголовка

Да

Нет

Да

Неверно

Неверно

Не отображается

Нет

Да

Нет

Нет

True

True

Обычный, с помощью заголовка

Нет

Да

Нет

Нет

True

Неверно

Отключено с помощью заголовка

Нет

Да

Нет

Нет

False

True

Не отображается

Нет

Да

Нет

Нет

Неверно

Неверно

Не отображается

Нет

Нет

Нет

Да

True

True

Не отображается

Нет

Нет

Нет

Да

True

Неверно

Не отображается

Нет

Нет

Нет

Да

Неверно

True

Не отображается

Нет

Нет

Нет

Да

Неверно

Неверно

Не отображается

Нет

Нет

Нет

Нет

True

True

Не отображается

Нет

Нет

Нет

Нет

True

Неверно

Не отображается

Нет

Нет

Нет

Нет

False

True

Не отображается

Нет

Нет

Нет

Нет

Неверно

Неверно

Не отображается

Нет

Значение , если свойство имеет значение NULL. В некоторых языках программирования пустая строка может не интерпретироваться так же, как пустая строка. Команда по-прежнему доступна для голосовых функций.

Когда сервер получает входные данные для одной из команд, он отправляет событие Command и передает имя Command в качестве атрибута объекта UserInput . Затем можно использовать условные операторы для сопоставления и обработки команды.