Udostępnij za pośrednictwem


Współrzędne formularzy systemu Windows

Układ współrzędnych formularza systemu Windows jest oparty na współrzędnych urządzenia, a podstawowa jednostka miary podczas rysowania w formularzach systemu Windows to jednostka urządzenia (zazwyczaj piksel). Punkty na ekranie są opisywane przez pary współrzędnych x i y, z współrzędnymi x zwiększającymi się do prawej i współrzędnymi y zwiększającymi się od góry do dołu. Lokalizacja źródła względem ekranu będzie się różnić w zależności od tego, czy określasz współrzędne ekranu, czy klienta.

Współrzędne ekranu

Aplikacja Windows Forms określa położenie okna na ekranie we współrzędnych ekranu. Współrzędne ekranu, początek to lewy górny róg ekranu. Pełna pozycja okna jest często opisywana przez strukturę Rectangle zawierającą współrzędne ekranu dwóch punktów, które definiują lewy górny i prawy dolny róg okna.

Współrzędne klienta

Aplikacja Windows Forms określa położenie punktów w formularzu lub kontrolce przy użyciu współrzędnych klienta. Początek współrzędnych klienta to lewy górny róg obszaru klienta kontrolki lub formularza. Współrzędne klienta zapewniają, że aplikacja może używać spójnych wartości współrzędnych podczas rysowania w formularzu lub kontrolce, niezależnie od położenia formularza lub kontrolki na ekranie.

Wymiary obszaru klienta są również opisane przez strukturę Rectangle zawierającą współrzędne klienta tego obszaru. We wszystkich przypadkach lewa górna współrzędna prostokąta jest uwzględniona w obszarze klienta, natomiast prawa dolna współrzędna jest wykluczona. Operacje graficzne nie obejmują prawych i dolnych krawędzi obszaru klienta. Na przykład metoda FillRectangle wypełni prawą i dolną krawędź określonego prostokąta, ale nie będzie zawierać tych krawędzi.

Mapowanie z jednego typu współrzędnych do innego

Czasami może być konieczne mapowania z współrzędnych ekranu na współrzędne klienta. Można to łatwo osiągnąć przy użyciu metod PointToClient i PointToScreen dostępnych w klasie Control. Na przykład właściwość MousePosition należąca do Control jest zgłaszana we współrzędnych ekranu, ale można chcieć przekonwertować je na współrzędne klienta.

Zobacz też