4

モニター構成で状況が変化したときに検出する必要があるものを構築しています。これには、モニターの追加/削除、モニターの位置の移動 (メイン画面との比較)、またはモニターの解像度の変更が含まれます。最も理想的な方法は、そのようなイベントが発生したときにトリガーされるいくつかの Windows メッセージをキャッチすることです。この情報は、モニターのサイズ/位置をいつでもリアルタイムで記録するために使用されます。たとえば、モニターの解像度が上がると、アプリはこれをすぐにキャッチし、変更に対応するために独自の調整を行います。これらのイベントをキャッチするにはどうすればよいですか?

また、VCL ( など) の使用を避けようとしているためVcl.Forms.Screen.MonitorCount、Windows メッセージをキャッチすることを好みます。

4

1 に答える 1

11

私が考えることができる最も明白なメッセージはWM_DISPLAYCHANGE、少なくとも解像度が変更されたときに送信されるメッセージです。

于 2012-06-12T20:16:21.417 に答える