私はC#Windows FormsプログラムをWindows 7に持っていますが、どのWindowsプログラムにも当てはまると思います。タスクバー/スタートメニューが表示されている最上部のフォーム/ウィンドウにウィンドウメッセージが送信されましたか?
私のプログラムのメインフォームは、画面全体をカバーし、Topmostプロパティが設定されています。しかし、StartキーをクリックしてStartメニューを開くと、Always on Topフォームの上にタスクバーとStart Menuが表示されます。
この問題が発生していないし、私のフォーム/ウィンドウはもはや最上位のウィンドウ(またはZオーダーの一番上)であるとき、私のフォーム/ウィンドウに送信されたウィンドウメッセージ(WM_)はありますか?私はWndProcを使用してそれをキャッチしたいと思います。
は、私はレイモンドチェンを消費するのが賢明だと思うあなた
情報をキャッチするときにはどうしますか?タスクバーを停止してスタートメニューを表示したいのですか、それとも知る必要がありますか? –
BringToFrontを使用してウィンドウを前面に持ってきたい。私が今やっているやり方は、BringToFrontを呼び出すために100ミリ秒ごとにタイマーを使用していますが、私はリソースを無駄にしていて、おそらくコンピュータの速度を落としています。 – AnAurelian
ユーザーがスタートメニューを使用できないようにしていませんか?そして、それはタスクバーとスタートメニューを見てフリックして隠されて恐ろしいように見える必要があります。このすべての目的は何ですか? –