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 collections, 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. En Visual Basic, déclarez une variable 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 permet d’obtenir 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. En outre, sa propriété Visible de la collection Commands doit également avoir la valeur True. Pour apparaître dans la fenêtre Commandes, les propriétés Légende et Voix d’une commande doivent être définies. Notez que les entrées de menu contextuel d’un caractère ne changent pas tant que le menu s’affiche. Si vous ajoutez ou supprimez des commandes ou modifiez leurs propriétés lorsque 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 toutes les modifications que vous apportez.

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

Propriété Caption

Voice-Caption, propriété

Voice, propriété

Visible, propriété

Propriété activée

S’affiche dans le menu contextuel caractère

Apparaît 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

True

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

True

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

True

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

True

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 caption

Oui

Non

Oui

True

False

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

Non

Oui

Non

Oui

False

True

N’apparaît pas

Oui, à l’aide de caption

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

True

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

True

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

True

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é est 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 par la voix.

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