共用方式為


IAgentCharacterEx::GetActive

[Microsoft代理程式從 Windows 7 開始已被取代,而且可能無法在後續版本的 Windows 中使用。]

HRESULT GetActive(
   short * psState  // address of active state setting
);

擷取用戶端應用程式是否為字元的作用中用戶端,以及字元是否為最上層。

  • 傳回S_OK,表示作業成功。

psState

接收狀態設定下列其中一個值的變數位址:

Description
const unsigned shortACTIVATE_NOTACTIVE = 0;
您的用戶端不是字元的作用中用戶端。
const unsigned shortACTIVATE_ACTIVE = 1;
您的用戶端是字元的作用中用戶端。
const unsigned shortACTIVATE_INPUTACTIVE = 2;
您的客戶端是輸入-主動(最上層字元的作用中用戶端)。

此設定可讓您知道您是字元的作用中客戶端,還是您的字元是否為輸入使用中字元。 當多個用戶端應用程式共用相同的字元時,字元的作用中用戶端會收到滑鼠輸入(例如,Microsoft Agent 控件按兩下或拖曳事件)。 同樣地,當顯示多個字元時,最上層字元的作用中用戶端(也稱為輸入-主動用戶端)會收到 IAgentNotifySink::Command 事件。

使用 Activate 方法可設定您的應用程式是字元的作用中客戶端,還是讓應用程式成為輸入作用中用戶端(這也使字元最上層)。

另請參閱

IAgentCharacter::ActivateIAgentNotifySinkEx::ActiveClientChange