Tym razem zadanie polegało na otwarciu okna, które zajęłoby 1/6 ekranu od góry. Trzeba więc sprawdzić jaka jest rozdzielczość ekranu na komputerze. Można tego dokonać wykorzystując właściwości klasy System.Windows.Forms.Screen. W moim przypadku czynności te umieściłem w metodzie Shown formy:
private void TestSetupForm_Shown(object sender, EventArgs e) { Rectangle r = Screen.PrimaryScreen.Bounds; this.Location = new Point(0,0); this.Width = r.Width; this.Height = r.Height / 6; }
Po kolei:
Właściwość Screen.PrimaryScreen.Bounds zawiera w sobie informacje o rozdzielczości podstawowego monitora. (Pamiętajmy, że do komputera może być podłączonych więcej monitorów). Wartość zostaje zapisana w r typu rectangle.
Szerokość okna ma być równa rozdzielczości, więc:
this.Width = r.Width;
zaś wysokość ma być równa 1/6 rozdzielczości, więc:
this.Height = r.Height / 6;
Okno ma być wyświetlone od góry ekranu, dlatego:
this.Location = new Point(0,0);
Przy okazji – mamy jeszcze właściwość Screen.PrimaryScreen.WorkingArea, która zwraca informacje o obszarze ekranu dostępnym dla aplikacji, czyli z pominięciem okien narzędziowych oraz paska zadań.