IAgentCharacterEx::GetActive

[自 Windows 7 起弃用 Microsoft Agent,在后续版本的 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 代理控件的单击或拖动事件)。 同样,当显示多个字符时,最顶层字符的活动客户端(也称为输入活动客服端)接收 IAgentNotifySink::Command 事件。

使用 Activate 方法设置应用程序是字符的活动客户端还是使应用程序成为输入活动客户端(这也使字符位于最顶层)。

另请参阅

IAgentCharacter::Activate, IAgentNotifySinkEx::ActiveClientChange