IOverlay::Advise
Advise メソッドは、dwInterests 引数で指定されたオーバーレイ イベント用のアドバイズ リンクを設定する。
構文
HRESULT Advise(
IOverlayNotify *pOverlayNotify,
DWORD dwInterests
);
パラメータ
pOverlayNotify
[in] 通知インターフェイスへのポインタ。
dwInterests
[in] 目的のコールバック。以下のイベントから成る任意のサブセットを指定する。
イベント | 説明 |
ADVISE_NONE | 変更なし。 |
ADVISE_CLIPPING | クリップ領域の変更 (ウィンドウと同期する)。 |
ADVISE_PALETTE | パレットの変更。 |
ADVISE_COLORKEY | クロマ キー値の変更。 |
ADVISE_POSITION | ビデオ ウィンドウの位置の変更 (ウィンドウと同期しない)。 |
ADVISE_DISPLAY_CHANGE | WM_DISPLAYCHANGE に関する呼び出し。ディスプレイ解像度を変更すると、すべてのウィンドウに WM_DISPLAYCHANGE メッセージが送られる。 |
ADVISE_ALL2 | 上のすべてのイベント。 |
戻り値
成功した場合は S_OK を返す。失敗した場合は HRESULT エラー コードを返す。
注意
このメソッドは、IOverlayNotify インターフェイスが通知を受け取るためのアドバイズ リンクを設定する。これらのイベントのいずれかが発生すると、pOverlayNotify 引数に渡された適切なエントリ ポイントが呼び出される (IOverlayNotify::OnClipChange、IOverlayNotify::OnColorKeyChange、IOverlayNotify::OnPaletteChange、または IOverlayNotify::OnPositionChange)。
1 つの IOverlay インターフェイスに設定できるアドバイズ リンクは 1 つだけである。2 度目以降の呼び出しで別の通知インターフェイスを設定しようとすると、VFW_E_ADVISE_ALREADY_SET が返される。アドバイズ リンクを取り消すには、IOverlay::Unadvise を使う。
参照