1

この状況を考えてみましょう。

  • マルチモニターシステムでは、
  • アプリケーションが最大化され、次に最小化され、
  • 私のアプリケーションには、上記のアプリケーションのメインウィンドウのHWNDがあります

さて、最小化された状態から復元されたときにウィンドウが表示されるモニターをどのように決定できますか?GetWindowRectとGetWindowInfoは負の値になり、すべてのモニターで明らかに同じになります。GetWindowPlacementはrcNormalPositionで適切な値を提供しますが、これらは最大化されていないときにアプリケーションが返す座標であり、部分的または全体的に別のモニター上にある可能性があります。

4

1 に答える 1

2

MonitorFromRect関数rcNormalPositionMONITOR_DEFAULTTONEARESTフラグを試してください。その後 -GetMonitorInfo作業モニター領域を決定するために呼び出します。

于 2012-07-20T23:42:13.653 に答える