Objet Command

[Microsoft Agent est déconseillé à partir de Windows 7 et peut être indisponible dans les versions ultérieures de Windows.]

Un objet Command est un élément d’une collection Commands . Le serveur fournit à l’utilisateur l’accès à vos objets Command lorsque votre application cliente devient active en entrée.

Pour accéder à la propriété d’un objet Command , vous le référencez dans sa collection à l’aide de sa propriété Name . Dans VBScript et Visual Basic vous pouvez utiliser directement la propriété Name :

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

Pour les langages de programmation qui ne prennent pas en charge les regroupements, utilisez la méthode Command :

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

Vous pouvez également référencer un objet Command en créant une référence à celui-ci. Dans Visual Basic, déclarez une variable d’objet et utilisez l’instruction Set pour créer la référence :

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

Dans Visual Basic 5.0, vous pouvez également déclarer l’objet comme type IAgentCtlCommandEx et créer la référence. Cette convention permet une liaison précoce, ce qui entraîne de meilleures performances :

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

Dans VBScript, vous pouvez déclarer une référence en tant que type particulier, mais vous pouvez toujours déclarer la variable et la définir sur la commande dans la collection :

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

Une commande peut apparaître dans le menu contextuel du caractère et dans la fenêtre Commandes, ou dans les deux. Pour apparaître dans le menu contextuel, il doit avoir une légende et avoir la propriété Visible définie sur True. De plus, sa propriété Visible de collection Commands doit également être définie sur True. Pour apparaître dans la fenêtre Commandes, une commande doit avoir ses propriétés légende et voix définies. Notez que les entrées de menu contextuel d’un caractère ne changent pas pendant l’affichage du menu. Si vous ajoutez ou supprimez des commandes ou modifiez leurs propriétés pendant que le menu contextuel du caractère s’affiche, le menu affiche ces modifications chaque fois que l’utilisateur l’affiche ensuite. Toutefois, la fenêtre Commandes reflète dynamiquement les modifications que vous apportez.

Le tableau suivant résume la façon dont les propriétés d’une commande affectent sa présentation :

Caption, propriété

Voice-Caption, propriété

Voice, propriété

Visible, propriété

Propriété activée

Apparaît dans le menu contextuel du caractère

S’affiche dans la fenêtre Commandes

Oui

Oui

Oui

True

True

Normal, à l’aide de la légende

Oui, à l’aide de VoiceCaption

Oui

Oui

Oui

Vrai

False

Désactivé, à l’aide de la légende

Non

Oui

Oui

Oui

False

True

N’apparaît pas

Oui, à l’aide de VoiceCaption

Oui

Oui

Oui

False

False

N’apparaît pas

Non

Oui

Oui

Non

True

True

Normal, à l’aide de la légende

Non

Oui

Oui

Non

Vrai

False

Désactivé, à l’aide de la légende

Non

Oui

Oui

Non

False

True

N’apparaît pas

Non

Oui

Oui

Non

False

False

N’apparaît pas

Non

Non

Oui

Oui

True

True

N’apparaît pas

Oui, à l’aide de VoiceCaption

Non

Oui

Oui

Vrai

False

N’apparaît pas

Non

Non

Oui

Oui

False

True

N’apparaît pas

Oui, à l’aide de VoiceCaption

Non

Oui

Oui

False

False

N’apparaît pas

Non

Non

Oui

Non

True

True

N’apparaît pas

Non

Non

Oui

Non

Vrai

False

N’apparaît pas

Non

Non

Oui

Non

False

True

N’apparaît pas

Non

Non

Oui

Non

False

False

N’apparaît pas

Non

Oui

Non

Oui

True

True

Normal, à l’aide de la légende

Oui, à l’aide de la légende

Oui

Non

Oui

Vrai

False

Désactivé, à l’aide de la légende

Non

Oui

Non

Oui

False

True

N’apparaît pas

Oui, à l’aide de la légende

Oui

Non

Oui

False

False

N’apparaît pas

Non

Oui

Non

Non

True

True

Normal, à l’aide de la légende

Non

Oui

Non

Non

Vrai

False

Désactivé, à l’aide de la légende

Non

Oui

Non

Non

False

True

N’apparaît pas

Non

Oui

Non

Non

False

False

N’apparaît pas

Non

Non

Non

Oui

True

True

N’apparaît pas

Non

Non

Non

Oui

Vrai

False

N’apparaît pas

Non

Non

Non

Oui

False

True

N’apparaît pas

Non

Non

Non

Oui

False

False

N’apparaît pas

Non

Non

Non

Non

True

True

N’apparaît pas

Non

Non

Non

Non

Vrai

False

N’apparaît pas

Non

Non

Non

Non

False

True

N’apparaît pas

Non

Non

Non

Non

False

False

N’apparaît pas

Non

Si le paramètre de propriété a la valeur Null. Dans certains langages de programmation, une chaîne vide peut ne pas être interprétée comme une chaîne null. La commande est toujours accessible en voix.

Lorsque le serveur reçoit une entrée pour l’une de vos commandes, il envoie un événement Command et renvoie le nom de la commande en tant qu’attribut de l’objet UserInput . Vous pouvez ensuite utiliser des instructions conditionnelles pour faire correspondre et traiter la commande.