0

ユーザーがアプリケーションのシステム トレイ アイコンにフォーカスを合わせたときに、システム トレイからアプリケーションの統計情報を表示したいと考えています。これを実現するために、Shell_NotifyIcon() を使用しましたが、文字列の最大サイズが 64 文字に制限されています。そのため、「CreateWindow()」を使用して独自のツールチップ ウィンドウを作成し (Win32 API を使用しています)、マウスをアイコンの上に置くと正常に動作します。ただし、システム トレイ アイコンがキーボードのみを使用してフォーカスされている場合は機能しません。

アプリをデバッグすると、キーボードを使用してアイコンがフォーカスされたときにキャプチャされたウィンドウ メッセージがないように見えました。しかし、マウスをアイコンの上に置くと、WM_MOUSEMOVE メッセージが表示されます。

システム トレイ アイコンがキーボードを使用してフォーカスされている場合 (つまり、Win+B --> 矢印キーを使用してアイコンに移動)、送信されるウィンドウ メッセージはありますか?

別の提案があれば幸いです。

ありがとう、クナル

4

1 に答える 1

0

システム トレイ アイコンのツールヒントは、Windows 2000 より前のバージョンの Windows でのみ 64 文字に制限されています。Windows 2000 では、ツールヒントの制限が 128 文字に増えました。

また、アイコンがキーボードでフォーカス/アクティブ化されたときにメッセージが表示されます。経由でシステム トレイに要求する必要がある場合がありますNIM_SETVERSION

ドキュメントを読む:

通知と通知領域

Shell_NotifyIcon() . Remarks には、キーボード/マウス メッセージの処理に関する多くの情報があります。

于 2013-10-23T19:15:54.987 に答える