C# progress bar kullanımı ve örnekleri isimli bu makalede; progress bar nesnesinin özellikleri kapsamlı olarak anlatılmakta, uygulama örnekleri ile konunun pekiştirilmesi sağlanmaktadır. Ayrıca konu anlatımı ve örneklere ilişkin SendeKodYaz Youtube kanalındaki eğitim videolarını da izleyebilirsiniz.

C# Progress Bar Nedir?

Progress Bar ifadesi Türkçede “ilerleme çubuğu” anlamına gelmektedir. Uzun bir işlemin yürütülme aşamalarının grafiksel olarak gösterilmesi gerektiği durumlarda kullanılır.

C# Progress Bar Kullanımı Örnekleri

  • Bir programın yüklenme aşamalarının Progress Bar ile gösterilmesi.
  • Yürütülmekte olan bir video ya da ses dosyasının kalan zamanının Progress Bar üzerinde gösterilmesi.
  • Bir yakıt deposunun doluluk oranının Progress Bar kullanılarak grafiksel olarak gösterilmesi.

C# Progress Bar Özellikleri

Enabled: Progress Bar nesnesinin aktif ya da pasif olmasını sağlar. Aktif olması için True, pasif olması için False değerini alır. Bu özellikler Properties panelinden düzenlenebileceği gibi kodla da belirlenebilir. Örneğin; bir butona tıklandığında Progress Bar nesnesinin “progressBar1.Enabled = true;” kodu ile aktif edilmesi sağlanabilir.

Maximum: Bu özellik Progress Bar nesnesinin kaça bölüneceğini belirler. İlerleme çubuğunun çalıştığı aralığın en üst sınırıdır. Varsayılan değeri 100 olarak belirlenmiştir. Örneğin; Maximum özelliği 10 olarak belirlenen bir Progress Bar nesnesi için her butona tıklandığında 1/10’luk kısmının ilerlemesi sağlanabilir.

Minumum: İlerleme çubuğunun en küçük çalışma değeridir. İlerleme çubuğuna bu değerin altında bir Value değeri atanamaz. Aksi durumda program hata verir. Örneğin; Minimum değeri 10 olan bir Progress Bar nesnesine “progressBar1.Value = 8;” kodu yazıldığında hata oluşur.

Value: Minimum ve maksimum özelliklerle belirtilen aralıktaki ilerleme çubuğunun geçerli değeridir. Yani Progress Bar nesnesinin grafiksel olarak ne kadarının doldurulacağının belirlendiği özelliktir. Value değeri ilerleme çubuğunun Maximum özelliği ile belirlenen değeri aşamaz.

Value Özelliği Örneği:  Örnekte Minimum değeri 0, Maximum değeri 100 olan bir ilerleme çubuğunun dört butonla kontrolü anlatılmıştır.

C# Progress Bar Value Özelliği
C# Progress Bar Value Özelliği

Dock: Form yeniden boyutlandırıldığında, Progress Bar nesnesinin de otomatik olarak ayarlanan konumda boyutlandırılmasını sağlar.

  • None: Kullanıcı tarafından istenilen konum ve boyuttu ayarlanır.
  • Top: Formun en üstüne konumlandır.
  • Left: Formun soluna konumlandırır.
  • Right: Formun sağına konumlandırır.
  • Fill: Formun tamamını kaplayacak şekilde konumlandırır.
  • Bottom: Formun en altına konumlandırır.
C# Progress Bar Dock Özelliği
C# Progress Bar Dock Özelliği

Step Özelliği ve Perform Step Yöntemi

Step: PerformStep () yöntemi çağrıldığında, denetimin geçerli değerini artırmak için gereken miktar. Bir başka deyişle Progress Bar nesnesinin value değerinin kaçar kaçar artacağını belirleyen özelliktir.

Step Özeliği Örneği: Örnekte progress bar nesnesinin step özelliği ve Perform.Step() metodu anlatılmıştır. Progress Bar nesnesinin Step özelliği 50 olarak belirlendiği için button1 nesnesine her tıklandığında PerformStep() metodu çalışır ve Progress Bar nesnesinin Value değeri 50 arttırılır.

C# Progress Bar Step Özelliği
C# Progress Bar Step Özelliği

Style: Progress Bar nesnesinin çalışma sitilinin belirlendiği özelliktir. Blocks, Continuous ve Marquee seçeneklerinden birisi seçilmelidir. Burada dikkat çeken özellik Marquee özelliğidir. Bu özellik sayesinde Timer nesnesi de kullanılarak istenilen sürede animasyon özelliği gösteren bir ilerleme çubuğu tasarlanabilir. Animasyon hızı Progress Bar seçili iken Properties Window penrecesindeki MarqueeAnimationSpeed özelliğine değer verilerek ayarlanır.

Makalenin ilerleyen kısımlarında bu özelliği içeren kapsamlı bir C# Progress Bar örneği mevcuttur.

C# Progress Bar Style
C# Progress Bar Style Örneği

 

C# Progress Bar Renk (Color) Değiştirme:

Fore Color: İlerleme çubuğunun ön plan rengidir, yani ilerleme çubuğunun dolduğu kısmın rengidir.

Back Color: İlerleme çubuğunun arka plan rengidir.

ÖNEMLİ NOT: Properties panelinden veya kod ile ForeColor ve BackColor özelliklerini değiştirseniz dahi bu değişiklikler progressBar nesnesine yansıtılmayacaktır. progressBar nesnesinin ForeColor ve BackColor özelliklerini değiştirmek için ileri seviye programlama bilgisine ihtiyaç vardır. Ancak aşağıdaki basit yöntemle de bu değişiklikler mümkündür.

Solution Explorer panelinden Program.cs isimli dosyayı açıp, aşağıda seçili olan Application.EnableVisualStyles() komut satırını siliniz. Peki Application.EnableVisualStyles() yöntemi ne işe yarar. Bu yöntem uygulama için görsel stiller (renkler, yazı  tipleri, temalar ve benzeri) sağlar. Bu satırı sildiğimizde Progress Bar nesnesinin arka plan (BackColor) ve ön plan (ForeColor) renkleri değiştirilebilir. Ancak bu satırı sildiğimiz için form ve üzerine eklenen nesnelerin tasarım özelliklerinde de değişiklikler meydana gelebilir.

C# Progress Bar Color
C# Progress Bar Renk (Color) Değiştirme
C# Progress Bar Renk Değiştirme
C# Progress Bar Renk Değiştirme

C# Progress Bar Örnekleri

C# Progress Bar Örnekleri 1 : C# TextBox Karakter Sayısı Bulma ve Progress Bar üzerinde gösterme

C# Progress Bar TextBox Örneği
C# Progress Bar TextBox Örneği

C# Progress Bar Örnekleri 2 : C# Form1’deki Marquee sitiline sahip Progress Bar’da 5 saniye animasyon gösterildikten sonra Form2’yi açan program örneği

C# Progress Bar Marquee
C# Progress Bar Marquee Örneği

C# Progress Bar Örnekleri 2 Açıklamaları:

Form1_Load Olayı: Form yürütüldüğünde Progress Bar nesnesinin Style özelliği Marquee yani animasyonlu olarak belirlenmiştir. MarqueeAnimationSpeed yani animasyon hızı 10 olarak belirlenmiştir. Timer1 nesnesinin interval özelliği 5000 milisaniye yani 5 saniye olarak ayarlanmıştır ve Timer1 nesnesi start edilmiştir. Form yürütüldükten 5 saniye sonra Timer1 nesnesinin Tick olayı tetiklenecek ve Tick olayına yazılan kodlar yürütülecektir.

timer1_Tick Olayı: Form yürütüldükten 5 saniye sonra global olarak tanımlanan i değişkenin değeri 1 arttırılır. If kontrol yapısı ile i=1 olduğunda Timer1 nesnesi stop edilir yani durdurulur. Bu esnada this.Hide() komutu ile Form1 gizlenir ve Form2.Show() komutu ile ekrana getirilir.

C# Progress Bar Timer Örneği

Timer Nesnesinin kullanımına ilişkin bilgi eksikliğinin varsa bu örneği uygulamadan önce “C# Timer Kullanımı ve Örnekleri” isimli makalemizi incelemek için tıklayınız.

Timer nesnesinin kullanımına ilişkin eğitim videomuzu Youtube üzerinden izlemek için tıklayınız.

C# Saniye ve Dakika bilgisine göre ilerleme çubuğunu (Progress Bar) doldurma

C# Progress Bar Timer Örneği
C# Progress Bar Timer Örneği

Bu makale Visual Studio dersleri kapsamında, Form Dersleri kategorisinde hazırlanmıştır. C# dersleri eğitimlerimiz Console Dersleri ve Form Dersleri olmak üzere iki kategoride hazırlanmaktadır. Programlama dersleri bir diğer deyişle kodlama dersleri üzerine çalışma yapan arkadaşlarımız C# Console Dersleri eğitimleri ve C# Form Dersleri eğitimlerini SendeKodYaz Youtube kanalımızdan takip edebilir. Yazılım hayatınızda başarılar dileriz.

Leave a comment