Das Command-Objekt
[Der Microsoft-Agent ist ab Windows 7 veraltet und in nachfolgenden Versionen von Windows möglicherweise nicht verfügbar.]
Ein Command-Objekt ist ein Element in einer Commands-Auflistung . Der Server bietet dem Benutzer Zugriff auf Ihre Command-Objekte , wenn Ihre Clientanwendung eingabeaktiv wird.
Um auf die Eigenschaft eines Command-Objekts zuzugreifen, verweisen Sie in seiner Auflistung mithilfe der Name-Eigenschaft darauf. In VBScript und Visual Basic können Sie die Name-Eigenschaft direkt verwenden:
<i>agent</i>.Characters("<i>CharacterID</i>").Commands("<i>Name</i>").<i>property</i> [= <i>value</i>]
Verwenden Sie für Programmiersprachen, die keine Sammlungen unterstützen, die Command-Methode :
<i>agent</i>.Characters("<i>CharacterID</i>").Commands.Command("<i>Name</i>").<i>property</i> [= <i>value</i>]
Sie können auch auf ein Command-Objekt verweisen, indem Sie einen Verweis darauf erstellen. Deklarieren Sie in Visual Basic eine Objektvariable, und verwenden Sie die Set-Anweisung, um den Verweis zu erstellen:
Dim Cmd1 as Object
...
Set Cmd1 = Agent.Characters("MyCharacterID").Commands("SampleCommand")
...
Cmd1.Enabled = True
In Visual Basic 5.0 können Sie das Objekt auch als Typ IAgentCtlCommandEx deklarieren und den Verweis erstellen. Diese Konvention ermöglicht eine frühzeitige Bindung, was zu einer besseren Leistung führt:
Dim Cmd1 as IAgentCtlCommandEx
...
Set Cmd1 = Agent.Characters("MyCharacterID").Commands("SampleCommand")
...
Cmd1.Enabled = True
In VBScript können Sie einen Verweis als bestimmten Typ deklarieren, aber Sie können die Variable trotzdem deklarieren und auf den Befehl in der Auflistung festlegen:
Dim Cmd1
...
Set Cmd1 = Agent.Characters("MyCharacterID").Commands("SampleCommand")
...
Cmd1.Enabled = True
Ein Befehl kann entweder im Popupmenü des Zeichens und im Befehlsfenster oder in beiden angezeigt werden. Damit sie im Popupmenü angezeigt werden kann, muss es eine Untertitel und die Visible-Eigenschaft auf True festgelegt sein. Darüber hinaus muss die Visible-Eigenschaft des Commands-Auflistungsobjekts ebenfalls auf True festgelegt werden. Um im Befehlsfenster angezeigt zu werden, müssen für einen Befehl die Eigenschaften Caption und Voice festgelegt sein. Beachten Sie, dass sich die Popupmenüeinträge eines Zeichens nicht ändern, während das Menü angezeigt wird. Wenn Sie Befehle hinzufügen oder entfernen oder deren Eigenschaften ändern, während das Popupmenü des Zeichens angezeigt wird, zeigt das Menü diese Änderungen an, wenn der Benutzer sie als Nächstes anzeigt. Das Befehlsfenster spiegelt jedoch alle Änderungen, die Sie vornehmen, dynamisch wider.
In der folgenden Tabelle wird zusammengefasst, wie sich die Eigenschaften eines Befehls auf seine Präsentation auswirken:
Caption-Eigenschaft
Voice-Caption-Eigenschaft
Voice-Eigenschaft
Visible-Eigenschaft
Enabled-Eigenschaft
Wird im Popupmenü des Zeichens angezeigt.
Wird im Befehlsfenster angezeigt.
Ja
Ja
Ja
True
True
Normal, mit Beschriftung
Ja, mit VoiceCaption
Ja
Ja
Ja
True
False
Deaktiviert, mit Beschriftung
Nein
Ja
Ja
Ja
False
True
Wird nicht angezeigt
Ja, mit VoiceCaption
Ja
Ja
Ja
False
False
Wird nicht angezeigt
Nein
Ja
Ja
Nein
True
True
Normal, mit Beschriftung
Nein
Ja
Ja
Nein
True
False
Deaktiviert, mit Beschriftung
Nein
Ja
Ja
Nein
False
True
Wird nicht angezeigt
Nein
Ja
Ja
Nein
False
False
Wird nicht angezeigt
Nein
Nein
Ja
Ja
True
True
Wird nicht angezeigt
Ja, mit VoiceCaption
Nein
Ja
Ja
True
False
Wird nicht angezeigt
Nein
Nein
Ja
Ja
False
True
Wird nicht angezeigt
Ja, mit VoiceCaption
Nein
Ja
Ja
False
False
Wird nicht angezeigt
Nein
Nein
Ja
Nein
True
True
Wird nicht angezeigt
Nein
Nein
Ja
Nein
True
False
Wird nicht angezeigt
Nein
Nein
Ja
Nein
False
True
Wird nicht angezeigt
Nein
Nein
Ja
Nein
False
False
Wird nicht angezeigt
Nein
Ja
Nein
Ja
True
True
Normal, mit Beschriftung
Ja, mit Beschriftung
Ja
Nein
Ja
True
False
Deaktiviert, mit Beschriftung
Nein
Ja
Nein
Ja
False
True
Wird nicht angezeigt
Ja, mit Beschriftung
Ja
Nein
Ja
False
False
Wird nicht angezeigt
Nein
Ja
Nein
Nein
True
True
Normal, mit Beschriftung
Nein
Ja
Nein
Nein
True
False
Deaktiviert, mit Beschriftung
Nein
Ja
Nein
Nein
False
True
Wird nicht angezeigt
Nein
Ja
Nein
Nein
False
False
Wird nicht angezeigt
Nein
Nein
Nein
Ja
True
True
Wird nicht angezeigt
Nein
Nein
Nein
Ja
True
False
Wird nicht angezeigt
Nein
Nein
Nein
Ja
False
True
Wird nicht angezeigt
Nein
Nein
Nein
Ja
False
False
Wird nicht angezeigt
Nein
Nein
Nein
Nein
True
True
Wird nicht angezeigt
Nein
Nein
Nein
Nein
True
False
Wird nicht angezeigt
Nein
Nein
Nein
Nein
False
True
Wird nicht angezeigt
Nein
Nein
Nein
Nein
False
False
Wird nicht angezeigt
Nein
Wenn die Eigenschaftseinstellung NULL ist. In einigen Programmiersprachen wird eine leere Zeichenfolge möglicherweise nicht wie eine NULL-Zeichenfolge interpretiert. Der Befehl kann weiterhin sprachseitig verwendet werden.
Wenn der Server Eingaben für einen Ihrer Befehle empfängt, sendet er ein Command-Ereignis und übergibt den Namen des Befehls als Attribut des UserInput-Objekts . Anschließend können Sie bedingte Anweisungen verwenden, um den Befehl abzugleichen und zu verarbeiten.