IAgentCharacterEx::GetActive
[Microsoft Agent は Windows 7 の時点で非推奨となり、後続のバージョンの Windows では使用できない可能性があります。]
HRESULT GetActive(
short * psState // address of active state setting
);
クライアント アプリケーションがキャラクターのアクティブなクライアントかどうか、およびキャラクターが一番上にあるかどうかを取得します。
- 操作が成功したことを示す S_OK を返します。
-
psState
-
状態設定に対して次のいずれかの値を受け取る変数のアドレス。
値 説明 const unsigned short ACTIVATE_NOTACTIVE = 0; クライアントがキャラクターのアクティブなクライアントではありません。 const unsigned short ACTIVATE_ACTIVE = 1; クライアントがキャラクターのアクティブなクライアントです。 const unsigned short ACTIVATE_INPUTACTIVE = 2; クライアントが入力アクティブ (最上位キャラクターのアクティブなクライアント) です。
この設定を使用すると、ユーザーがキャラクターのアクティブなクライアントかどうか、またはキャラクターが入力アクティブ キャラクターであるかどうかがわかります。 複数のクライアント アプリケーションで同じキャラクターを共有している場合、キャラクターのアクティブなクライアントはマウス入力を受け取ります (たとえば、Microsoft Agent コントロールのクリック イベントまたはドラッグ イベント)。 同様に、複数のキャラクターが表示されると、最上位キャラクター (入力アクティブ クライアントとも呼ばれます) のアクティブなクライアントは IAgentNotifySink::Command イベントを受け取ります。
Activateメソッドを使用して、アプリケーションがキャラクターのアクティブなクライアントかどうかを設定するか、アプリケーションを入力アクティブ クライアントにするか (キャラクターの最上位にもなります) を設定します。
参照
IAgentCharacter::Activate、IAgentNotifySinkEx::ActiveClientChange