次の方法で共有


Windows フォーム座標

Windows フォームの座標系はデバイスの座標に基づいており、Windows フォームで描画するときの基本的な測定単位はデバイス単位 (通常はピクセル) です。 画面上のポイントは x 座標と y 座標のペアで表され、x 座標は右に増加し、y 座標は上から下に増加します。 画面に対する原点の位置は、画面座標とクライアント座標のどちらを指定するかによって異なります。

画面座標

Windows フォーム アプリケーションは、画面上のウィンドウの位置を画面座標で指定します。 画面座標の場合、原点は画面の左上隅です。 ウィンドウの完全な位置は、多くの場合、ウィンドウの左上隅と右下隅を定義する 2 つのポイントの画面座標を含む Rectangle 構造体によって記述されます。

クライアント座標

Windows フォーム アプリケーションでは、クライアント座標を使用して、フォームまたはコントロール内のポイントの位置を指定します。 クライアント座標の原点は、コントロールまたはフォームのクライアント領域の左上隅です。 クライアント座標を使用すると、画面上のフォームまたはコントロールの位置に関係なく、フォームまたはコントロールで描画するときに、アプリケーションで一貫した座標値を使用できます。

また、クライアント領域の寸法は、その領域のクライアント座標を含む Rectangle 構造によっても記述されます。 いずれの場合も、四角形の左上の座標はクライアント領域に含まれ、右下の座標は除外されます。 グラフィックス操作には、クライアント領域の右端と下端は含まれません。 たとえば、FillRectangle メソッドは、指定した四角形の右端と下端まで塗りつぶされますが、これらのエッジは含まれません。

ある種類の座標から別の座標へのマッピング

場合によっては、画面座標からクライアント座標にマップする必要があります。 これは、Control クラスで使用できる PointToClient メソッドと PointToScreen メソッドを使用して簡単に実現できます。 たとえば、ControlMousePosition プロパティは画面座標で報告されますが、クライアント座標に変換することもできます。

関連項目