C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 45 を表示中)
■23740 / )  タスクトレイメニューでデスクトップの最前面ウィンドウを取得
□投稿者/ まどか (580回)-(2008/08/21(Thu) 11:44:02)

分類:[Windows 全般] 

NotifyIconのメニュー内でデスクトップの最前面ウィンドウ(タスクトレイをクリックする前の作業ウィンドウ)を取得しようとしてます。
NotifyIcon.MouseDownでGetForegroundWindowを呼び出すと、タスクバー(Shell_TrayWnd)が返ってくるようです。
コンテキストメニュー.ClickではFrameworkのウィンドウクラスが返ってくるようです。

特定のウィンドウスタイルを持つZオーダーのトップウィンドウを探すというようなやり方になると思うのですが。。。
ウィンドウ操作では無理ならタスクトレイのアイコンがアクティブになる直前をフックしてGetForegroundWindowするってことになりますでしょうか。
もう一歩踏み込んだヒントをお願いします。

返信 編集キー/


管理者用

- Child Tree -