WinForm
アプリケーションで、OnPaint()
イベントをサブスクライブするときに、描画する領域を定義するプロパティをPaintEventArgs
提供します。ClipRectangle
フォームのサイズを垂直方向または水平方向に変更すると、描画する最小の長方形が得られます。
ただし、ウィンドウのサイズが両方向に変更されると、描画する必要のある領域がいくつかあり(1つは右側、もう1つは下部)、OnPaint
イベントでそれらをマージします。その結果、と同じサイズの長方形にForm
なります(したがって、すべてが再描画されます)。私が欲しいのは、別々の個々の領域です(写真の2つの長方形)
GDI+
描画する必要のないもの(物は2つの長方形の外側にあるだけでなく)を自動的にクリップすることは知っていますが、呼び出しを最大ClipRectangle
に抑えたいと思います(多くの呼び出しがあるため、イベントで描画するときにパフォーマンスの問題がすでに発生しています、これ時期尚早の最適化ではありません)GDI+
OnPaint
GDI+