Görsel Loading Formu yapmak

Merhaba arkadaşlar, bu yazımda görsel açıdan zengin loading veya geçiş formu olarak adlandırabileceğiniz form nasıl oluşturulur; konusunu inceleyip örnek uygulama yapıyorum.

Görsel Dizayn

Önce bir form oluşturuyorsunuz,

Form “Properties” ayarından;

  • “TransparencyKey” ayarını “White” yapıyorsunuz,
  • “BackColor” ayarını “White” yapıyorsunuz,
  • “FormBorderStyle” ayarını da “None” yapıyorsunuz,
  • “TopMost” ayarını True yapıyorsunuz,
  • “StartPosition” ayarını ise “CenterScreen” yapıyorsunuz.

Form tabanına ait ayarlarımız bu kadar. ekleyeceğimiz nesneler;

  1. PictureBox
  2. ProgressBar
  3. Timer
  • PictureBox

Forma ortalayıp, içerisinde yer alacak “Resmi” seçiyoruz

  • Timer

“interval” değerini 500 yapıyoruz.

oluşturduğum Formu aşağıda görebilirsiniz

Kodlama

 private void Form1_Load(object sender, EventArgs e)
        {
            progressBar1.Maximum = 100; //progressbar maksimum değerini belirttik
            progressBar1.Minimum = 0; //progressbar minimum değerini belirttik
            timer1.Start(); //timer ı başlattık
        }
private void timer1_Tick(object sender, EventArgs e)
        {
            if (progressBar1.Value != 100)//progressbar değeri 100 mü diye kontrol ediyoruz
            {
                progressBar1.Value += 5; //progressbar değerini 5 er 5 er arttırdık
            }
            else
            {
                progressBar1.Value = 0;   progressbar değeri 100 oldu ise 0 lama yaparak döngüyü başlatıyoruz      
            }
        }

ve çalıştırıyoruz. Loading Formu tam olarak aşağıdaki şekilde çalışacak.

Fark ettiyseniz şöyle birşey yaptım; çalışma şeklini tam olarak görebilesiniz diye “ProgressBar” nesnesini Timer yardımı ile döngüye soktum. Yani ProgressBar doldukça kendisini sıfırlıyor ve döngü yeniden başlıyor.

Bonus

Formumuzu oluşturduk, çok güzel oldu ve istediğimiz gibide çalışıyor. Ama bu formu ekran üzerinde hareket ettirmemiz gerekirse ne yapacağız?

Bize gerekli olan kodlamayıda bonus olarak veriyorum;

Benim kilit nesnem “PictureBox” a tıklayarak “Properties” ayarından “events” sayfasına geçiş yapıyor ve aşağıdaki eventlara çift tıklayıp kodlarımıza dahil ediyoruz.

  • MouseDown
  • MouseUp
  • MouseMove
bool dragging;
        Point offset;
        private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
        {
            dragging = true;
            offset = e.Location;
        }
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
        {
            dragging = false;
        }
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
        {
            if (dragging)
            {
                Point currentScreenPos = PointToScreen(e.Location);
                Location = new
                Point(currentScreenPos.X - offset.X,
                currentScreenPos.Y - offset.Y);
            }
        }

böylece Loading formunuza eklediğiniz resim üzerine mause ile tıklayıp basılı tutarak istediğiniz yere sürükleyip bırakabilirsiniz. Böylece açılan uygulamanızı ekranda herhangi bir yere taşımak isterseniz, artık rahatlıkla ve formda bozulma olmadan taşıyabilirsiniz.

Konuyla ilgili yorumlarınızı veya “Duygusal” emojilerim ile yazım hakkındaki düşüncelerinizi belirtebilirsiniz. ilginize teşekkür ederim.

Hakan BAYRAM

Gönlünü Yazılıma kaptırmış biri, Hobi olarak başladığı Kodlamaya profesyonellik katarak ilerleyen Hakan BAYRAM, 1986 izmir doğumlu.

You may also like...

3 Responses

  1. Engin Yenigün dedi ki:

    Gerçekten harika bir yazı olmuş. Teşekkür ederim. Şöyle klasik olarak başarılarınızın devamını dilerim diyorum 😀 Harikasınız 🙂

%d bloggers like this: