ITfLangBarEventSink 是 Windows 多语言输入法组件 (Tf) 中的一个接口,用于接收语言栏事件的通知。以下是 ITfLangBarEventSink 接口的基本定义:
DECLARE_INTERFACE_IID_(ITfLangBarEventSink, IUnknown, "AA80E7F4-2021-11D2-93E0-0060B067B86E")
{
    STDMETHOD(OnUpdate)(_In_ DWORD dwFlags) PURE;
    STDMETHOD(OnLanguageChange)(_In_ LANGID langid, _Out_ BOOL *pfAccept) PURE;
    STDMETHOD(OnUILangChange)(_In_ LANGID langid, _Out_ BOOL *pfAccept) PURE;
    STDMETHOD(OnIconChange)(_In_ CLSID clsid, _Out_ BOOL *pfAccept) PURE;
    STDMETHOD(OnStatusChange)(_In_ DWORD dwFlags) PURE;
    STDMETHOD(OnShowFloating)(_In_ BOOL fShow) PURE;
    STDMETHOD(OnDefineItem)(_In_ REFGUID rguid) PURE;
    STDMETHOD(OnClick)(_In_ TfLBIClick click, _In_ POINT pt, _In_ const RECT *prcArea) PURE;
};

这个接口主要包含以下方法:

  •  OnUpdate: 在语言栏的某些方面发生更改时调用。

  •  OnLanguageChange: 当输入法的语言更改时调用,允许接收者决定是否接受该更改。

  •  OnUILangChange: 当用户界面的语言更改时调用,允许接收者决定是否接受该更改。

  •  OnIconChange: 当语言栏图标更改时调用,允许接收者决定是否接受该更改。

  •  OnStatusChange: 当语言栏的状态更改时调用。

  •  OnShowFloating: 在浮动面板显示或隐藏时调用。

  •  OnDefineItem: 当语言栏项定义时调用,允许接收者决定是否接受该项。

  •  OnClick: 当用户点击语言栏项时调用,提供点击位置信息。


此接口允许你的应用程序或组件注册为语言栏事件的接收者,以便在语言栏状态发生更改时得到通知,并采取相应的操作。


转载请注明出处:http://www.zyzy.cn/article/detail/25197/Win32 API/Ctfutb.h/ITfLangBarEventSink