W mojej aplikacji potrzebny Splash Screen jest by pokazać użytkownikowi, że aplikacja się uruchamia, podczas gdy wczytywane są dane z bazy danych. Wiadomo - użytkownik, jeśli nie zobaczy błyskawicznej reakcji na działanie "dwukliku" na ikonkę, znów na nią kliknie, i znów i znów. Po co frustrować użytkowników? Lepiej zamontować w aplikacji splash screen.
Może to być jakaś miła dla oka grafika, czy cokolwiek innego.
Po 1. należy przygotować formatkę Splash - warto wyłączyć ikonę na pasku dla formy, obramowanie, ikony zamykania itd. - wszystkie properties, które mogą nas interesować zmieniamy jak dla każdej innej formatki.
Po 2. dla formatki Splash ustawiamy jakiś Background Image - to co będzie się pojawiało gdy będzie nam się aplikacja ładować. Warto przy tym dobrać tak rozmiar formatki, by cała grafika mieściła się w jej wnętrzu.
Po 3. W konstruktorze głównej formy aplikacji wpisujemy standardową konstrukcję tworzącą nasz splash screen, czyli
Splash splash = new Splash(); splash.Show(); splash.Update();ostatnia linijka wymusza rysowanie okna zanim nastąpi zakończenie metody. Dzięki Show() komunikaty nadal są w ruchu (tj. aplikacja się ładuje), a Refresh() sprawia, że okienko się pojawi. Ta ostatnia linijka jest bardzo ważna dla osiągnięcia tego efektu. Sprawdźcie, jak się splash zachowa bez niej :)
Oczywiście, następne linijki w konstruktorze głównej formy to standardowo:
InitializeComponent(); // cała reszta stuffu inicjującego
Żeby splashScreen zniknął po załadowaniu się głównej formy wystarczy do kodu wywoływanego podczas zdarzenia Form.Load dla głównej formy wrzucić:
splash.Close(); // ewentualnie splash.Hide();
To tyle - ot, taki szybki sposób na ułatwienie życia użytkowników.
Brak komentarzy:
Prześlij komentarz