Click here to Skip to main content
15,886,199 members
Articles / Programming Languages / C#
Article

Using Form Opacity to Make Splash Screen for your Project (Fade In & Fade Out)

Rate me:
Please Sign up or sign in to vote.
3.64/5 (9 votes)
2 Sep 2008CPOL1 min read 40.1K   1.9K   29   1
Make Fade In & Fade Out animation with Windows Form using C#

Introduction

Hello! This is my first article on The Code Project and I hope this will give you some opinion of creating a splash screen for your application using the form opacity property.

NOTE: I created this project with Visual Studio 2008 and .NET Framework 3.5, so you MUST use Visual Studio 2008 to open the project otherwise it will not work. You could just open the source code file (*.cs) to browse the code. Thanks.

Using the Code

The main idea of this project is to make Fade In and Fade Out animation with the Windows Form. The main component of this project is System.Windows.Forms.Timer.

In the project, I have two Timer Controls, one which is used for Fade In effect and the other for Fade Out effect.

Make the form invisible when the form loads, then start the Fade In effect by enabling the timerFadeIn control...

C#
private void Form1_Load(object sender, EventArgs e)
{
	this.Opacity = 0;
	timerFadeIn.Enabled = true;//Enable the timerFadeIn to start Fade In Effect
	timerFadeOut.Enabled = false;
}

Next, the code in timerFadeIn_Tick event:

C#
private void timerFadeIn_Tick(object sender, EventArgs e)
{//Fade in effect
            i += 0.05;
            if (i >= 1)
            {//if form is fully visible, we execute the Fade Out Effect
                this.Opacity = 1;
                timerFadeIn.Enabled = false;//stop the Fade In Effect
                timerFadeOut.Enabled = true;//start the Fade Out Effect
                return;
            }
            this.Opacity = i;
}

Finally, after the form is fully visible, we make the Fade Out effect in the timerFadeOut_Tick event.

C#
private void timerFadeOut_Tick(object sender, EventArgs e)
{//Fade out effect
            i -= 0.05;
            if (i <= 0.01)
            {//if form is invisible, we execute the Fade In Effect again
                this.Opacity = 0.0;
                timerFadeIn.Enabled = true;//start the Fade In Effect
                timerFadeOut.Enabled = false;//stop the Fade Out Effect
                return;
            }
            this.Opacity = i;
}

Points of Interest

I have a lot of fun working with this project and I hope it will come handy for you and hope you will have fun like me too. Comments and advice will be gladly appreciated, thanks.

Related Topic

You can check Mr. Mohammad Dayyan's article about form opacity here for more resources and code.

History

  • 2nd September, 2008: Initial post

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer
Cambodia Cambodia
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
GeneralMy vote of 5 Pin
Gmust20-Jul-10 10:59
Gmust20-Jul-10 10:59 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.