Σήμερα, ένας φίλος μου ζήτησε μια βοήθεια σχετικά με τη δημιουργία SplashScreen για μία Windows Forms Application. Η ιδέα είναι ότι στον constructor της main φόρμας γίνεται “βαριά” δουλειά, έτσι επιλέγουμε να εμφανίσουμε μία άλλη φόρμα (splash), η οποία και παραμένει ενεργή μέχρις ότου να τελειώσει το φόρτωμα της main.
Η υλοποίηση βασίζεται στη δημιουργία ενός thread το οποίο θα κάνει new την main φόρμα, ενώ παράλληλα θα εμφανίζεται η splash. Υπάρχει μία static boolean μεταβλητή στο πρόγραμμα, η οποία γίνεται true από το πρόγραμμα, όταν τελειώσει το φόρτωμα της main. Παράλληλα, η splash, με τη χρήση ενός απλού timer, τσεκάρει κάθε τόσο την τιμή της μεταβλητής αυτής, και όταν την βρει true, τότε κλείνει.
Για περισσότερα, δείτε τον επισυναπτόμενο κώδικα