Czym są desktopy?
Aplikacje desktopowe to programy uruchamiane lokalnie na komputerze użytkownika, działające w systemie operacyjnym, np. Windows, macOS lub Linux. Są one niezależne od przeglądarki internetowej i często oferują większą wydajność oraz dostęp do zasobów systemowych niż aplikacje webowe.
W kontekście egzaminu INF.04, aplikacje desktopowe tworzyć można również w języku C# przy użyciu Windows Forms (WinForms) lub WPF (Windows Presentation Foundation) w środowisku Visual Studio.
Ruszamy dalej
- Tworzenie projektu
- Layout
- Kontrolki
- Język C#
1. Typy aplikacji desktopowych
a) Aplikacje jednostanowiskowe
• Uruchamiane na jednym komputerze.
• Przechowują dane lokalnie (np. w plikach lub bazach danych SQLite).
• Przykład: Notatnik, Kalkulator.
b) Aplikacje klienckie
• Komunikują się z serwerem w celu pobrania lub wysłania danych.
• Przykład: Aplikacje księgowe, systemy rezerwacji.
c) Aplikacje hybrydowe
• Łączą funkcje aplikacji lokalnej z danymi pobieranymi z sieci.
• Przykład: Spotify (lokalne odtwarzanie, ale dostęp do treści z serwera).
d) Aplikacje wbudowane (Embedded)
• Tworzone do pracy w systemach wbudowanych, np. automatyka przemysłowa.
2. Layouty w aplikacjach Windows Forms
W WinForms nie ma zaawansowanego systemu layoutów jak w WPF, ale można zarządzać rozmieszczeniem kontrolek poprzez:
2.1. Ręczne ustawianie pozycji – domyślne podejście, w którym każda kontrolka ma ustaloną lokalizację (Location) i rozmiar (Size).
2.2. Docking i Anchoring – automatyczne dopasowanie kontrolek do rozmiaru okna.
2.3. Panele i kontenery – używanie kontrolek grupujących do lepszego zarządzania interfejsem.
a) Ręczne ustawianie pozycji (Fixed Layout)
• Kontrolki rozmieszczane są ręcznie w edytorze graficznym.
• Właściwość Location określa położenie (X, Y).
• Właściwość Size określa rozmiar (Width, Height).
• Podejście proste, ale nie skalowalne – aplikacja może wyglądać źle na ekranach o różnych rozdzielczościach.
b) Docking (dokowanie)
• Właściwość Dock pozwala przypiąć kontrolkę do:
• Top – góry okna,
• Bottom – dołu okna,
• Left – lewej strony,
• Right – prawej strony,
• Fill – wypełnienia całego dostępnego obszaru.
c) Anchoring (kotwiczenie)
• Właściwość Anchor określa, które krawędzie formularza mają pozostać „przyklejone” do kontrolki podczas zmiany rozmiaru okna.
• Możliwe wartości:
• Top (góra),
• Bottom (dół),
• Left (lewo),
• Right (prawo).
d) Panele i kontenery
- Panel
• Służy do grupowania kontrolek.
• Można w nim umieścić inne kontrolki i zastosować Dock lub Anchor.
- GroupBox
• Podobny do Panel, ale posiada tytuł.
• Używany do grupowania kontrolek, np. zestawu opcji (RadioButton).
- TableLayoutPanel
• Tworzy układ siatki z wierszami i kolumnami.
• Można przypisywać kontrolki do określonych komórek.

