Shell_NotifyIconA関数 (shellapi.h)
タスク バーの状態領域にメッセージを送信します。
構文
BOOL Shell_NotifyIconA(
[in] DWORD dwMessage,
[in] PNOTIFYICONDATAA lpData
);
パラメーター
[in] dwMessage
型: DWORD
この関数によって実行されるアクションを指定する値。 次のいずれかの値を指定できます。
NIM_ADD (0x00000000)
0x00000000。 ステータス領域にアイコンを追加します。 アイコンには、
NIM_MODIFY (0x00000001)
0x00000001。 ステータス領域のアイコンを変更します。
NIM_DELETE (0x00000002)
0x00000002。 ステータス領域からアイコンを削除します。 NOTIFYICONDATAlpdata が指す構造体は、アイコンが通知領域 (NIM_ADD) に追加されたときに最初に割り当てられた ID を使用して、削除するアイコンを識別します。
NIM_SETFOCUS (0x00000003)
0x00000003。 バージョン 5.0 以降 Shell32.dllだけです。 タスク バーの通知領域にフォーカスを戻します。 通知領域アイコンは、UI 操作が完了したときにこのメッセージを使用する必要があります。 たとえば、アイコンにショートカット メニューが表示されていても、ユーザーが Esc キーを押してキャンセルする場合は、NIM_SETFOCUS を使用して通知領域にフォーカスを戻します。
NIM_SETVERSION (0x00000004)
0x00000004。 バージョン 5.0 以降 Shell32.dllだけです。 lpdataが指す構造体の
NIM_SETVERSIONは、通知領域アイコンが追加されるたびに呼び出す必要があります (NIM_ADD)。 NIM_MODIFYで呼び出す必要はありません。 ユーザーがログオフすると、バージョン設定は保持されません。
詳細については、「解説」セクションを参照してください。
[in] lpData
型: PNOTIFYICONDATA
NOTIFYICONDATA 構造体へのポインター。 構造体の内容は、dwMessageの値
戻り値
型: BOOL
成功した場合
備考
Windows 2000 (
- ユーザーがキーボードで通知アイコンのショートカット メニューを選択した場合、シェルは関連付けられているアプリケーションに WM_CONTEXTMENU メッセージを送信するようになりました。 以前のバージョンでは、WM_RBUTTONDOWN および WM_RBUTTONUP メッセージが送信されます。
- ユーザーがキーボードで通知アイコンを選択し、SPACEBAR キーまたは ENTER キーを使用してアクティブ化すると、バージョン 5.0 シェルは関連付けられたアプリケーションにNIN_KEYSELECT通知を送信します。 以前のバージョンでは、WM_RBUTTONDOWN および WM_RBUTTONUP メッセージが送信されます。
- ユーザーがマウスで通知アイコンを選択し、Enter キーを使用してアクティブ化すると、シェルは関連付けられたアプリケーションにNIN_SELECT通知を送信するようになりました。 以前のバージョンでは、WM_RBUTTONDOWN および WM_RBUTTONUP メッセージが送信されます。
- NIN_BALLOONSHOW。 バルーンが表示されたときに送信されます (バルーンはキューに入れられます)。
-
NIN_BALLOONHIDE。 バルーンが消えたときに送信されます。 たとえば、アイコンが削除されたときなどです。 このメッセージは、タイムアウトが原因でバルーンが閉じられた場合、またはユーザーがマウスをクリックした場合は送信されません。
Windows 7 の時点で、NIN_BALLOONHIDEは、NIIF_RESPECT_QUIET_TIME フラグが設定された通知が、静かな時間帯 (新しいコンピューターでのユーザーの最初の 1 時間) に表示しようとしたときにも送信されます。 その場合、バルーンは一切表示されません。
- NIN_BALLOONTIMEOUT。 タイムアウトが原因でバルーンが閉じられたときに送信されます。
- NIN_BALLOONUSERCLICK。 ユーザーがマウスをクリックしたために吹き出しが閉じられたときに送信されます。
- NIN_POPUPOPEN。 ユーザーがアイコンの上にカーソルを置くと、標準的なテキストヒントの代わりに、より豊富なポップアップ UI を使用する必要があることを示すために送信されます。
- NIN_POPUPCLOSE。 アイコンの上にカーソルが置かなくなったときに送信され、リッチ ポップアップ UI を閉じる必要があることを示します。
手記
shellapi.h ヘッダーは、unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとしてShell_NotifyIconを定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows XP [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows 2000 Server [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | shellapi.h |
ライブラリ | Shell32.lib |
DLL | Shell32.dll (バージョン 4.0 以降) |
API セットの | ext-ms-win-shell-shell32-l1-2-1 (Windows 10 バージョン 10.0.10240 で導入) |