C# ile Splash Form Hazırlamak

Batuhan Düzgün tarafından yayınlanmıştır 15. September 2010 02:42

Herkese merhaba arkadaşlar bu yazımda sizlere Açılış (Splash) Formu hazırlamayı anlatacağım.Açılır formlar özellikle programların başlangıçlarında görselliği arttırmak ve yaptığımız uygulamalara profesyonel bir kimlik vermek amacıyla uygulanır.Gerçekten de bir çok kullanıcı üzerinde bizzat gördüm.Programınızın istediği kadar işlevi basit ve küçük olsun,eğer ki bir açılır(splash) formunuz var ise herkes yaptığınızdan daha fazla etkileniyor.
 
Bizim yapacağımız uygulamada form saydamlığı sıfırdan itibaren artarak maksimuma ulaşacak ardından,tam tersi şekilde azalarak kaybolacak ve sıfırlanacak. 
 
Şimdi ilk iş olarak bir bir adet resim temin edeceğiz.Ben kendi klasörümden bir resim seçtim.Ardından Visual Studio'yu açıp File>>New>>Project>>Windows Form Application yolunu takip ediyoruz ve boş bir form uygulaması açıyoruz.
 
Ardından ekrana gelen boş formumuzun özeliklerini Properties panelinden değiştirelim.
 
Aşağıdaki adımları tek tek uygulayalım:
 
1-)Formun "BackColor" özelliğini "White" olarak değiştiyoruz.  
 
2-)Formun "FormBorderStyle" özelliğini "None" olarak değiştiriyoruz.
 
3-)Formun "StartPosition" özelliğini "CenterScreen" olarak ayarlıyoruz.
 
4-)Formun "Size" özelliğini "760; 407" şeklinde ayarlıyoruz.
 
Ardından form üzerine iki adet "Timer"  nesnesi bırakıyoruz.Sağdaki ToolBox'tan alabilirsiniz.
 
Daha sonra açlışta kullanacağımız Resmi projemizin Bin klasörü içine kopyalıyoruz.Ve aşağıdaki kodları yazıyoruz.
 
İlk olarak formun LOAD metodunun kodları açıklamalarıyla birlikte aşağıdadır.
 

Bitmap BtmpResim= new Bitmap(Application.StartupPath + "\\splash1.jpg");//resmi bitmap nesnesine çeviriyoruz.

Rectangle Dikdortgen= new Rectangle(0,0,760,407);//ardından form boyutuna uygun bir dikdörtgen nesnesi çiziyoruz.

 

private void Form1_Load(objectsender, EventArgs e)

{

            this.Opacity= 0;//form yüklenirken opkalık özelliğine"0" veriyoruz.

            timer1.Enabled = true;//timer1 özelliğinitrue olarak ayarlıyoruz.

            timer1.Start();//timer1'i Start ile başlatıyoruz.

}
 
Şimdi de timer1'ın  "timer1_Tick"  metoduna ait kodları verelim.
 

double Sayac =0.0;

 

private void timer1_Tick(objectsender, EventArgs e)

{

            //timer1'in her tick olayında opaklığı 0.3 birim arttırıyoruz.

            timer1.Enabled = true;

            timer1.Interval = 500;//timer1'in bir tick zamanını 0.5 saniye olarak ayarlıyoruz.

            Sayac += 0.3;//sayacı her tick olayında 0.3 kadar arttırıyoruz.

            this.Opacity= Sayac;//sayac değerini formun opaklığına atıyoruz.

            //formopaklığı böylece otomatik değişmiş oluyor.

 

            if(Sayac > 2)//eğerki değer 2 yi geçerse timer1sonlanacak.

            { //buseferde timer2 çalışacak ve opaklık giderek kaybolacak ve sıfırlancak.

                timer1.Enabled = false;

                timer2.Enabled = true;

                timer1.Stop();

                timer2.Start();

            }

}
 
Aynı şekilde timer2'ye ait  "timer2_Tick" metoduna ait kodları verelim.
 

private void timer2_Tick(objectsender, EventArgs e)

{

            //timer1ile aynı kodlar tek fark burda opaklık azalarak geri gidecek.

            timer2.Enabled = true;

            timer2.Interval = 200;

            Sayac -= 0.3;

            this.Opacity= Sayac;

 

            if(Sayac == 0)

            {

                timer2.Stop();//timer2'yi durdur

                timer1.Stop();//timer1'i durdur

                this.Close();//formu kapat

            }

}
 
Evet uygulamamıza ait kodlar bu kadar.Şimdi de son iş olarak uygulamamızı çalıştıralım. 
 
 
 
Uygulamayı indirmek için tıklayınız http://rapidshare.com/files/419027606/GorselBilesenUyg.rar
 
Bir makalenin daha sonuna geldik.Bir sonraki makalemde görüşmek dileğiyle ...
 
Batuhan Düzgün
 
Sakarya Üniversitesi
 
Bilgisayar Mühendisliği 

Currently rated 5.0 by 3 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Etiketler:

C#

Comments

Add comment


(Will show your Gravatar icon)  

  Country flag

biuquote
  • Comment
  • Preview
Loading





Bu site BlogEngine.NET 1.4.5.0 ile oluşturulmuştur. Türkçe çevirisi BlogEngine TR ekibi tarafından yapılmıştır.

Batuhan Düzgün

Sakarya Üniversitesi 

Bilgisayar Mühendisi

Endüstri Mühendisi

Yeditepe Üniversitesi

Bilgisayar Mühendisliği Yüksek Lisans 

 sahibinden.com

   Kıdemli Uzman Yazılım Mühendisi  

E-Mail 

   batuhan.duzgun@sahibinden.com

   batuhan.duzgun@windowslive.com

  github.com/batux

 

Sayfalar

Calendar

<<  March 2019  >>
MoTuWeThFrSaSu
25262728123
45678910
11121314151617
18192021222324
25262728293031
1234567

Yazıları geniş takvimde göster