Windows Forms-Koordinaten
Aktualisiert: November 2007
Das Koordinatensystem für ein Windows Form basiert auf Gerätekoordinaten, und die grundlegende Maßeinheit beim Zeichnen in Windows Forms ist die Geräteeinheit (normalerweise Pixel). Punkte auf dem Bildschirm werden durch X- und Y-Koordinatenpaare beschrieben, wobei die X-Koordinaten nach rechts zunehmen und die Y-Koordinaten von oben nach unten. Die Position des Ursprungs relativ zum Bildschirm hängt davon ab, ob Sie Bildschirm- oder Clientkoordinaten angeben.
Bildschirmkoordinaten
Eine Windows Forms-Anwendung gibt die Position eines Fensters auf dem Bildschirm in Bildschirmkoordinaten an. Für Bildschirmkoordinaten ist der Ursprung die linke obere Ecke des Bildschirms. Die vollständige Position eines Fensters wird häufig von einer Rectangle-Struktur beschrieben, die die Bildschirmkoordinaten von zwei Punkten enthält, die wiederum die obere linke und untere rechte Ecke des Fensters definieren.
Clientkoordinaten
Eine Windows Forms-Anwendung gibt die Position von Punkten in einem Formular oder Steuerelement mithilfe von Clientkoordinaten an. Der Ursprung für Clientkoordinaten ist die obere linke Ecke des Clientbereichs des Steuerelements oder Formulars. Clientkoordinaten gewährleisten, dass eine Anwendung beim Zeichnen in einem Formular oder Steuerelement konsistente Koordinatenwerte verwenden kann, unabhängig von der Position des Formulars oder Steuerelements auf dem Bildschirm.
Die Maße des Clientbereichs werden ebenfalls von einer Rectangle-Struktur beschrieben, die Clientkoordinaten für den Bereich enthält. In allen Fällen ist die obere linke Koordinate des Rechtecks in den Clientbereich eingeschlossen, während die untere rechte Koordinate ausgeschlossen ist. Grafikoperationen schließen den rechten und unteren Rand eines Clientbereichs nicht ein. Mit der FillRectangle-Methode wird ein festgelegtes Rechteck bis zum rechten und unteren Rand gefüllt, die Kanten selbst werden jedoch nicht eingeschlossen.
Zuordnen von einem Koordinatentyp zu einem anderen
Gelegentlich müssen Sie Bildschirmkoordinaten Clientkoordinaten zuordnen. Eine einfache Möglichkeit hierzu bieten die PointToClient-Methode und die PointToScreen-Methode der Control-Klasse. Beispielsweise wird die MousePosition-Eigenschaft von Control in Bildschirmkoordinaten angegeben, Sie möchten diese jedoch in Clientkoordinaten konvertieren.