ActiveX Denetimleri Arabirimleri
Denetim ile istemcisi arasında iletişim kurmaya yönelik diğer mekanizmalara ek olarak, ActiveX denetimleri teknolojisi IOleControl ve istemci denetimi iletişimi için IOleControlSitearabirimlerinibelirtir. Ayrıca basit denetim kapsayıcıları için ISimpleFrameSitearabirimi.
Ancak bu üç arabirim denetimlere özgüdür ve genellikle denetim bağlamı dışında kullanışlı değildir. Bu arabirimler aşağıdaki gibi tanımlanır.
interface IOleControl : IUnknown
{
HRESULT GetControlInfo([out] CONTROLINFO *pCI);
HRESULT OnMnemonic([in] LPMSG pMsg);
HRESULT OnAmbientPropertyChange([in] DISPID dispID);
HRESULT FreezeEvents([in] BOOL bFreeze);
}
interface IOleControlSite : IUnknown
{
HRESULT OnControlInfoChanged(void);
HRESULT LockInPlaceActive([in] BOOL fLock);
HRESULT GetExtendedControl([out] IDispatch **ppDisp);
HRESULT TransformCoords([in-out] POINTL *pptlHimetric, [in-out] POINTF *pptfContainer, [in] DWORD dwFlags);
HRESULT TranslateAccelerator([in] LPMSG pMsg, [in] DWORD grfModifiers);
HRESULT OnFocus([in] BOOL fGotFocus);
HRESULT ShowPropertyFrame(void);
}
interface ISimpleFrameSite : IUnknown
{
HRESULT PreMessageFilter([in] HWND hWnd, [in] UINT msg, [in] WPARAM wp, [in] LPARAM lp,
[out] LRESULT *plResult, [out] DWORD *pdwCookie);
HRESULT PostMessageFilter([in] HWND hWnd, [in] UINT msg, [in] WPARAM wp, [in] LPARAM lp,
[out] LRESULT *plResult, [in] DWORD dwCookie);
}
Grup kutusu gibi bazı denetimler yalnızca diğer denetimlerin basit bir kapsayıcısıdır. Bu gibi durumlarda, basit çerçeve olarak adlandırılan basit denetimin tüm kapsayıcı gereksinimlerini uygulaması gerekmez. İçeren denetimlerinden arabirim çağrılarının çoğunu basit çerçeveyi yöneten kapsayıcıya devredebilir. Arabirim çağrılarının yanı sıra, basit çerçevenin de içindeki denetimlerden gelen Windows iletileriyle ilgilenmesi gerekir. Bu nedenle kapsayıcı, bu tür basit çerçeve denetimlerinin iletileri kapsayıcıya geçirmesine izin vermek için ISimpleFrameSite sağlar. PreMessageFilter önce iletiyi işler; PostMessageFilter, basit çerçeve iletinin kendisini işledikten sonra çağrılır.
İlgili konular