Feedback

C# - Form Fade-In Effekt

Veröffentlicht von am 20.07.2009
(2 Bewertungen)
Dieses Snippet zeigt wie ein Fenster zentriert gestartet werden kann mit einem Fade-In Effekt.
Und dies in einem zweiten Thread, so dass das GUI auch während des Effekts auf User-Input reagieren kann.
public partial class LogOn : Form
    {
        public LogOn()
        {
            InitializeComponent();
            this.StartPosition = FormStartPosition.CenterScreen;
            this.Opacity = 0;
        }

        #region Delegates

        delegate bool delBool();

        #endregion

        private void LogOn_Load(object sender, EventArgs e)
        {
            new Thread(new ThreadStart(delegate { FadeIn(); })).Start();
        }

        private void FadeIn()
        {
            delBool fis = new delBool(fadeInStep);
            while (!(bool)this.Invoke(fis)) { }
        }
        private bool fadeInStep()
        {
            this.Opacity += 0.01;

            Thread.Sleep(2);

            if (this.Opacity == 1)
                return true;
            else
                return false;
        }
    }
}
Abgelegt unter fadein, fade in, fade-in, fade, center, centered, zentriert.

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!