C# pozwala nam na ustawienie lokacji każdego elementu "z palca". Wystarczy ustawić pole Location dla dowolnego elementu GUI. Możemy zrobić to także dla formularza czy okna dialogowego. Niestety jest to nieco nadużywane. Nie zawsze jest potrzeba wyliczać punkt.
Przykładowo dla umieszczenia na środku ekranu może nam się zdarzyć spotkać taki oto kod w aplikacji:
form.Location = new Point(Screen.PrimaryScreen.WorkingArea.Width/2 - form.Width/2, Screen.PrimaryScreen.WorkingArea.Height/2 - form.Width/2);
Jest tu jak widać "sporo" liczenia, jawne tworzenie nowego obiektu punktu (raz to niby nie kosztuje, ale zawsze) i jest to pozornie skomplikowane. C# pozwala na ustawienie startowej lokalizacji o wiele prościej:
form.StartPosition = FormStartPosition.CenterScreen;
Ustawienie własności StartPosition przed pokazaniem formularza przy pomocy Show() czy ShowDialog() pozwala na poprawne ustawienie lokalizacji na środku ekranu. Proponuję więc korzystać z tej właściwości klasy Form, szczególnie, że pozwala ona także na ustawienie na środku parenta.
Zwykle używamy standardowych lokalizacji jakie daje opisana właściwość. Właściwość Location przydaje się dla formularza niezwykle rzadko. Możemy ustawić pozycję startową tak, aby system operacyjny ustawił go w domyślnej lokalizacji i jest to generalnie najszybsze. Jeśli ktoś się oczywiście przejmuje szybkością aplikacji pisząc w C# ;).
Czytaj też:
Brak komentarzy:
Prześlij komentarz