Pplu は、システムが複数のモニターで実行されているときに、プログラムの実行速度が遅くなるのではないかと考えています。
もちろん、1つには、当然ながら、複数のモニターを使用している場合は、画面上にシステムが追跡するものがさらにあります。これは、小さなモニターよりも大きなモニターでプログラムが遅くなるのと同じ理由です。
モニターが1つしかMonitorFromPoint
ない場合、フラグがのようになれば簡単になります。モニターが1つしかない場合、
MONITOR_DEFAULTTONEAREST
「このポイントに最も近いモニターは何か」などの質問に答えるからです。非常に簡単になります。
2つのモニターの寸法が同じでない場合、2つのモニターの結合は長方形にならず、すべてのモニターの結合に対するクリッピングがより複雑になります。
しかし、たとえば、あるモニターを565フォーマットに設定し、別のモニターを24bppに設定した場合など、モニターを異なるカラーフォーマットに設定するミスを犯した場合、複数のモニターに大きなペナルティが生じると思われます。
2つのモニターが同じカラー形式を使用していない場合、ウィンドウが別のカラー形式のウィンドウに移動した場合(または、さらに悪いことに、それがまたがるように配置された場合)異なる色形式の2つのモニター)。原則として、プログラムは「最悪の」DIBのみを使用する必要があります。たとえば、一方のモニターが555でもう一方が565の場合、565 DIBで十分です。ただし、実際には、ほとんどのプログラムは、さまざまなカラー形式のモニターに直面すると、24bppまたは32bpp DIBにフォールバックします。
(を呼び出すことにより、すべてのモニターが同じ色形式を持っているかどうかを照会します
GetSystemMetrics(SM_SAMEDISPLAYFORMAT)
。)
DIBが異なる色形式のデバイスにblitされると形式変換が行われるため、プログラムがビットマップをDIBとして保持することを強制すると、少なくとも1つのモニター(およびおそらく両方)で、そのDIBが画面に描画されるときの形式変換。また、DIBを使用するコストが最適化による節約を上回っているため、すべてのモニターが同じカラー形式を使用しているわけではない場合は、いくつかの最適化が無効になっています。
まだ設定していない場合は、ディスプレイ設定に移動して、すべてのモニターが同じ色深度に設定されていることを確認してください。これを行わないと、大量のグラフィックス最適化が失われます。