1. Anasayfa
  2. Visual Studio C#

Visual Studio C# Örnekleri – pictureBox ile Basit Slide Show Yapımı

Visual Studio C# Örnekleri – pictureBox ile Basit Slide Show Yapımı
0

Visual Studio C# Örneklerimize picturebox ile basit slide show yaparak devam edeceğiz, yapacağımız uygulamada kullanıcının seçtiği bir klasördeki tüm resimler listeye eklenecek ve daha sonra belirlediğimiz zaman aralığında resimler sırayla değişecek. İlk olarak aşağıdaki form görüntüsünü oluşturuyoruz.
pictureboxslideshow
Şimdi formun üzerinde neler var bakalım İki Tane Panel, birinci panelin içinde bir label ve picturerBox, ikinci panelin için de bir listbox, dört buton, bir label, bir combobox, ve form alanına alınmış bir folderBrowserDialog ve timer nesnesi..
Kodların açıklaması
//1 Resimlerin geçiş süresini ayarlayabilmek için timer nesnesine 1-10 arasındaki sayılar ekleniyor..
//2 folderBrowserDialog penceresi ile resimlerin olduğu klasörün seçilmesi ve klasördeki resimlerin listesinin listbox’a alınması
//3 Slideshow başlaması için Timer nesnesi başlatılıyor Eğer çalışıyorsada durduruluyor..
//4 Listbox’dan seçilen eleman değiştiği anda picturebox’da gösterilecek olan resmin yolu alınıp resim ve resmin ismi görüntüleniyor
//5 Önceki butonuna basılınca listbox’dan sıradaki resmin yolunun alınabilmesi için seçili hale geliyor
//6 Sonraki butonuna basılınca listbox’dan sıradaki resmin yolunun alınabilmesi için seçili hale geliyor
//7 Seçilen zaman diliminde sonraki resme geçilmesi için sonraki butonu tetikleniyor
Uygulamayı konu sonundan indirebilirsiniz..

  string Dirpath;
        int imgindex;
        public Form1()
        {
            InitializeComponent();
        }

        //1 Resimlerin geçiş süresini ayarlayabilmek için timer nesnesine
        // 1-10 arasındaki sayılar ekleniyor..
        private void Form1_Load(object sender, EventArgs e)
        {
            for (int i = 1; i < 10; i++)
            {
                comboBox1.Items.Add(i);
                comboBox1.SelectedIndex = 0;
            }//http://www.bilisimogretmeni.com/
            label2.Text = "Görüntülenen Resim Yok";
        }
        //2 folderBrowserDialog penceresi ile resimlerin olduğu klasörün seçilmesi
        // ve klasördeki resimlerin listesinin listbox'a alınması
        private void button1_Click(object sender, EventArgs e)
        {
            DialogResult dr = folderBrowserDialog1.ShowDialog();
            if (dr != DialogResult.Cancel)
            {
                listBox1.Items.Clear();
                Dirpath = folderBrowserDialog1.SelectedPath;
                string[] files = Directory.GetFiles(Dirpath, "*.Jpg");
                foreach (string file in files)
                {
                    int pos = file.LastIndexOf("||");
                    string FName = file.Substring(pos + 1);
                    listBox1.Items.Add(FName);
                }
                listBox1.SelectedIndex = imgindex = 0;
                btnonceki.Enabled = true;
                btnsonraki.Enabled = btnshow.Enabled = true;
            }
        }
        //3 Slideshow başlaması için Timer nesnesi başlatılıyor
        // Eğer çalışıyorsada durduruluyor..
        private void btnshow_Click(object sender, EventArgs e)
        {
            if (btnshow.Text == "Slide Show")
            {
                btnshow.Text = "Durdur";
                timer1.Interval = int.Parse(comboBox1.Text) * 1000;
                timer1.Start();
                //http://www.bilisimogretmeni.com/
            }
            else
            {
                timer1.Stop();
                btnshow.Text = "Slide Show";
            }
        }
        //4 Listbox'dan seçilen eleman değiştiği anda picturebox'da gösterilecek olan
        // resmin yolu alınıp resim ve resmin ismi görüntüleniyor
        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            pictureBox1.ImageLocation = listBox1.SelectedItem.ToString ();
            string ad = listBox1.SelectedItem.ToString();
            string[] parcalar = ad.Split('\\');
            label2.Text = "Gösterilen Resim "+parcalar[parcalar.Count() - 1].ToString();
        }
        //5 Önceki butonuna basılınca listbox'dan sıradaki resmin yolunun alınabilmesi için
        // seçili hale geliyor
        private void btnonceki_Click(object sender, EventArgs e)
        {
            if (imgindex > 0)
            {
                imgindex -= 1;
                if(imgindex ==0)
                {//http://www.bilisimogretmeni.com/
                    btnonceki .Enabled=false;
                }
                if (imgindex < listBox1.Items.Count - 1)
                    btnsonraki.Enabled = true;
                listBox1.SelectedIndex = imgindex;
            }
        }
        //6 Sonraki butonuna basılınca listbox'dan sıradaki resmin yolunun alınabilmesi için
        // seçili hale geliyor
        private void btnsonraki_Click(object sender, EventArgs e)
        {
            if (imgindex < listBox1.Items.Count - 1)
            {
                imgindex += 1;
                if (imgindex == listBox1.Items.Count - 1)
                    btnsonraki.Enabled = false;
                if (imgindex > 0)//http://www.bilisimogretmeni.com/
                btnonceki.Enabled = true;
                listBox1.SelectedIndex = imgindex;
            }
        }
        //7 Seçilen zaman diliminde sonraki resme geçilmesi için sonraki butonu tetikleniyor
        private void timer1_Tick(object sender, EventArgs e)
        {
            btnsonraki.PerformClick();
        }

pictureboxslideshow

İndir “C# PictureBox SlideShow”

SlideShowApp.zip – 2504 defa indirildi – 59,58 KB
Bu İçeriğe Tepkin Ne Oldu?
  • 0
    ba_ar_l_
    Başarılı
  • 0
    gayet_yi
    Gayet İyi
  • 0
    te_ekk_rler
    Teşekkürler
  • 0
    anlamad_m
    Anlamadım
  • 1
    yetersiz
    Yetersiz
Subscribe
Bildir
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Yorum
Inline Feedbacks
View all comments