C# openFileDialog Kontrolü

Bu kontrol sayesinde kullanıcılar windows’un kullandığı ortak iletişim formlarını kullanarak dosya yükleme işlemlerini gerçekleştire bilirler.

# openFileDialog.ShowDialog()

openDialog pencerisinin açılmasını sağlayan koddur. Bir butonun click olayına yazıldığında dosya windows’un bilindik dosya açma ekranı karşımıza çıkar.

private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.ShowDialog();
}

# openFileDialog1.Title()
openFileDialog penceresinin başlığını belirler. openFileDialog1.ShowDialog() komutundan önce kullanılmalıdır. Çünkü pencere açıldıktan sonra Title’ a değer atasanız bile formun başlığı değişmeyecektir.

private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.Title = “Lütfen Dozya Seçiniz”;
openFileDialog1.ShowDialog();
}

# openFileDialog1.Filter()
openFileDialog penceresindesadece belirli uzantılı dosyaların listelenmesini istiyorsanız bu kodu kullanmalısınız.

private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.Title = “Lütfen Dozya Seçiniz”;
openFileDialog1.Filter = ” (*.jpg)|*.jpg|(*.png)|*.png”;
openFileDialog1.ShowDialog();
}

# openFileDialog1.FilterIndex()
Filtreleme yaparken varsayılan olarak hangisinin kullanılacağını belirler. Mesela openDialog penceresi ilk açıldığın varsayılan olarak belirlenen değer jpg ise önce jpg resimler çıkar.

private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.Title = “Lütfen Dozya Seçiniz”;
openFileDialog1.Filter = ” (*.jpg)|*.jpg|(*.png)|*.png”;
openFileDialog1.FilterIndex = 1; // varsayılan olarak jpg uzantıları göster
openFileDialog1.ShowDialog();
}

# openFileDialog1.InitialDirectory
openFileDialog penceresinin varsayılan olarak açılması istenilen klasörün yolunu belirler.

private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.Title = “Lütfen Dozya Seçiniz”;
openFileDialog1.Filter = ” (*.jpg)|*.jpg|(*.png)|*.png”;
openFileDialog1.FilterIndex = 1;
openFileDialog1.InitialDirectory=”C:\\Documents and Settings\\Emrah\\Desktop\\blog”;
openFileDialog1.ShowDialog();
}

# openFileDialog1.Multiselect
True değeri aktarılırsa openDialog penceresinde shift tuşuna basarak birden fazla dosya seçilebilinir.
private void button1_Click(object sender, EventArgs e)

{
openFileDialog1.Title = “Lütfen Dozya Seçiniz”;
openFileDialog1.Filter = ” (*.jpg)|*.jpg|(*.png)|*.png”;
openFileDialog1.FilterIndex = 1;
openFileDialog1.InitialDirectory=”C:\\Documents and Settings\\Emrah\\Desktop\\blog”;
openFileDialog1.Multiselect = true;
openFileDialog1.ShowDialog();
}

# openFileDialog1.FileNames
seçilen dosyanın yolunu belirler. Mesela seçilen dosyanın yolunu bir textbox a yazdıralım.

private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.Title = “Lütfen Dozya Seçiniz”;
openFileDialog1.Filter = ” (*.jpg)|*.jpg|(*.png)|*.png”;
openFileDialog1.FilterIndex = 1;
openFileDialog1.InitialDirectory=”C:\\Documents and Settings\\Emrah\\Desktop\\blog”;
openFileDialog1.Multiselect = true;
openFileDialog1.ShowDialog();
foreach (string str in openFileDialog1.FileNames)
textBox1.Text = str;
}

C# Timer Nesnesi Kullanımı

  Visual Studio C# Timer nesnesi milisaniye cinsinden geçen süreyi hesaplamak için kullanılabilir. İstediğimiz komutların belirlediğimiz zaman aralığında tekrarlamasını istiyorsak timer kullanabiliriz. Örneğin bilgi yarışması uygulamalarında olduğu gibi 30 saniye sonra diğer soruya geçen projelerde kullanılabilir.

İnterval Özelliği: Timer’ın çalışacağı zaman bölümüdür. Zaman mili saniye cinsindedir. Mesela her 1 saniyede kodları çalıştırmak istersek interval 1000, her 2 saniyede kodları çalıştırmak için interval’i 2000 yapmamız gerekir.

Enabled Özelliği: Değeri true ise timer’ın çalışmasını,false ise durdurulmasını sağlar.Yani enabled değeri true ise timer’ın Tick olayına yazılan kodlar çalışır, false ise çalışmaz.

Tick Olayı : Bu olaya yazılan kodlar interval ile belirlenen zamanda tekrar edilir.

Aşağıdaki kodlar sayesinde form1 de 30 saniye durulmakta ve otomatik olarak form2 ye geçilmektedir.

timer1_Tick olayı timer için belirtilen süre dolduğu zaman gerçekleşen olaydır. Burada yazdığımız 
kodlar ile form2 ye geçmesini sağladık.

Form2 frm2 = new Form2();
frm2.Show();
this.Hide();
}
private void Form1_Load(object sender, EventArgs e)
{
timer1.Interval = 30 * 1000;
timer1.Start();
}

Form1 i kapatırken timer1 i de durdurduk. 

private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
timer1.Stop();
}


Yukarıdaki örnekte olduğu gibi bir soru için süre belirleyebilir, ve sürenin sonunda ikinci forma geçebilirsiniz.


public partial class Form1 : Form
{
    public Form1()
    {
    InitializeComponent();
    }
     int a = 10;
     private void timer1_Tick(object sender, EventArgs e)
    {
     a–;
     label1.Text = a.ToString();
     if (a == 0)
     {
      timer1.Enabled = false;
      MessageBox.Show("Süreniz Bitti");
      Form2 f2 = new Form2();
      f2.Show();
      this.Hide();
     }
    }
}

C# – Büyük Sayı Hesaplayan Program

Merhaba,

Bu yazı da iki adet butona rastgele yazılan iki sayıdan doğru olana tıklandığında +5 puan yanlış olana tıklandığında ise -2 puan veren uygulamayı paylaşacağız.
Önce çalışır haldeki erkan görüntüsünü verelim :

Program, Form yüklenir yüklenmez butonlara rastgele sayılar atıyor ve bilmenizi istiyor.Cevaplama yapıldıktan sonra tekrar rastgele sayılar üretiyor.Bu arada program 2 adet label ve 2 adet butondan oluşuyor.
Form’a çift tıkladığımız da açılan kod ekranına aşağıdaki kodları yazıyoruz:
————————————————————————————————

 private void Form1_Load(object sender, EventArgs e)
        {
            Random rnd = new Random();
             
            btnSayi1.Text= Convert.ToString(rnd.Next(1, 20));
            btnSayi2.Text =Convert.ToString(rnd.Next(1,20));

        }

————————————————————————————————-


btnSayi1 adlı butonun içine de aşağıdaki kodları yazıyoruz:

————————————————————————————————-

 int sayac = 0;     // bu kodu buton sınıfının hemen üstüne yazıyoruz 
        private void btnSayi1_Click(object sender, EventArgs e)
        {

            int a = Convert.ToInt32(btnSayi1.Text);
            btnSayi1.Text =Convert.ToString( a);
            int b = Convert.ToInt32(btnSayi2.Text);
            btnSayi2.Text =Convert.ToString(b );
         

            if (a > b)
            {
                sayac += 5;
                label2.Text = “SONUÇ : ” + sayac;
            }
            if (a < b)
            {
                sayac -= 2;
                label2.Text = ” SONUÇ : ” + sayac;
            }
            if (a == b)
                label2.Text = “Tekrar deneyiniz”;

            Random rnd = new Random();
            btnSayi1.Text = Convert.ToString(rnd.Next(1,20));
            btnSayi2.Text = Convert.ToString(rnd.Next(1,20));

        }





————————————————————————————————-

btnSayi2 adlı butonun içine de aşağıdaki kodları yazıyoruz:

————————————————————————————————-



private void btnSayi2_Click(object sender, EventArgs e)
        {

            int a = Convert.ToInt32(btnSayi1.Text);
            btnSayi1.Text = Convert.ToString(a);
            int b = Convert.ToInt32(btnSayi2.Text);
            btnSayi2.Text = Convert.ToString(b);

            if (b > a)
            {
                sayac += 5;
                label2.Text = “SONUÇ : ” + sayac;
            }
            if (b < a)
            {
                sayac -= 2;
                label2.Text = ” SONUÇ : ” + sayac;
            }
            if (a == b)
                label2.Text = “Tekrar deneyiniz”;

            Random rnd = new Random();
            btnSayi1.Text = Convert.ToString(rnd.Next(1, 20));
            btnSayi2.Text = Convert.ToString(rnd.Next(1, 20));

        }



————————————————————————————————-


C# – Zar Atma Uygulaması

Merhaba Arkadaşlar ,

Bu yazıda rastgele zar atan ve kaç kaç geldiğini listBox’a yazan bir uygulama yapacağız.Öncelikle çalışır haldeki ekran görüntüsünü verelim :

 

Gerekli dizaynı yaptıktan sonra Masaüstüne bir klasör açıp aşağıda paylaşacağım Zar resimleri koymalısınız.Ardından if komutu içindeki adresleri kendinize göre düzenlemelisiniz.Ayrıca zarların kaç kaç geldiğini de listZarlar adındaki listBox’da göstermektedir.

Şimdi  de btnZarAt adındaki butonun içine aşağıdaki kodları yazıyoruz :
Not : Mavi kodlar buton sınıfının kodlarıdır,yazmanıza gerek yoktur.
————————————————————————————————-

 private void btnZarAt_Click(object sender, EventArgs e)
        {
            Random rnd = new Random();
            int a = rnd.Next(1,7);
            int b = rnd.Next(1,7);
         
            if (a == 1)
                pictureZar1.Load(@”C:\Users\Cs\Desktop\Zar\1.bmp”);
            if (a == 2)
                pictureZar1.Load(@”C:\Users\Cs\Desktop\Zar\2.bmp”);
            if (a == 3)
                pictureZar1.Load(@”C:\Users\Cs\Desktop\Zar\3.bmp”);
            if (a == 4)
                pictureZar1.Load(@”C:\Users\Cs\Desktop\Zar\4.bmp”);
            if (a == 5)
                pictureZar1.Load(@”C:\Users\Cs\Desktop\Zar\5.bmp”);
            if (a == 6)
                pictureZar1.Load(@”C:\Users\Cs\Desktop\Zar\6.bmp”);
         

            if (b == 1)
                pictureZar2.Load(@”C:\Users\Cs\Desktop\Zar\1.bmp”);
            if (b == 2)
                pictureZar2.Load(@”C:\Users\Cs\Desktop\Zar\2.bmp”);
            if (b == 3)
                pictureZar2.Load(@”C:\Users\Cs\Desktop\Zar\3.bmp”);
            if (b == 4)
                pictureZar2.Load(@”C:\Users\Cs\Desktop\Zar\4.bmp”);
            if (b == 5)
                pictureZar2.Load(@”C:\Users\Cs\Desktop\Zar\5.bmp”);
            if (b == 6)
                pictureZar2.Load(@”C:\Users\Cs\Desktop\Zar\6.bmp”);
         
            listZarlar.Items.Add(a + “-“+ b);

        }


—————————————————————————————————–

C # ile yapılmış bazı örnekler – 1

Merhaba Arkadaşlar,

Bu yazı da C# ile yapılmış bazı örnekler yayınlayacağım.

Not : Mavi ile yazılan kodları yazmıyoruz.Onlar Visual Studio’nun içinde hazır bulunan kodlardır.


Örnek 1 : Girilen iki sayı arasında ki değerleri listBox1’e ekleyip,listBox1’den seçilen sayıyı listBox2 ‘ ye atan Program

Önce çalışır haldeki görüntüsünü verelim,


   Dizayn kısmından bu hale getirdikten sonra sıra geldi kod kısmına.    
   Buton kod bloğuna aşağıdaki kodları yazıyoruz;

——————————————————————-

//butonun içine yazılacak kod :

private void buttonEkle_Click(object sender, EventArgs e)
{

 int a = Convert.ToInt32(textBoxAlt.Text);
            int b = Convert.ToInt32(textBoxUst.Text);
         
            if(checkBoxRastgele.Checked==true)
            {
                Random rnd = new Random();
                for (int i = a; i < b; i++)
                {
                 
                    listBox1.Items.Add(rnd.Next(a, b));
                }
            }
     
        if (checkBoxRastgele.Checked==false)
        {
       
         
            for (int i=a;i<=b;i++)
            listBox1.Items.Add(i);

        }

}

// aşağıdaki kod listBox1’e ait koddur:

private void listBox1_Click(object sender, EventArgs e)
        {
            listBox2.Items.Add(listBox1.SelectedItem);
            listBox1.Items.Remove(listBox1.SelectedItem);
     
        }

——————————————————————-

Örnek 2 : comboBox ‘da seçilen adet kadar buton, Form içinde rastegele konum değiştirir.Değişen bu konumları da listBox’a aktarır


Programın ekran görüntüsü :
Dizaynı yaptıktan sonra kodları aşağıdaki gibi yazıyoruz.
—————————————————————
int sayac = 0;
     
//Dikkat ! Yukarıdaki kod buton sınıfının hemen üzerine yazılmalıdır ( içine değil ) .
  
 private void buttonGezen_Click(object sender, EventArgs e)
        {
            sayac++;
                Random rnd = new Random();
                buttonGezen.Left = rnd.Next(0, this.ClientSize.Width – buttonGezen.Width);
                buttonGezen.Top = rnd.Next(0, this.ClientSize.Height – buttonGezen.Height);
                listBoxKonumlar.Items.Add(“X :” + buttonGezen.Location.X + “,” + “Y : ” + buttonGezen.Location.Y);
        
            if (sayac == comboBoxAdet.SelectedIndex +1 )
                buttonGezen.Enabled = false;
            
        }
———————————————————————-


Örnek 3 : Oyuna Başla butonuna tıklanınca program 0 ile 100 arasında bir sayı tutar sizden bunu bulmanızı ister .


Programın ekran görüntüsü:


Gerekli dizaynı yaptıktan sonra kod kısmına aşağıdakileri yazıyoruz.

——————————————————-
//Oyuna başla butonu için aşağıdaki kodu yazıyoruz.

int soru;   //Bu kodu yine buton sınıfının üstüne yazıyoruz.
   

  private void buttonBasla_Click(object sender, EventArgs e)
        {
            Random rnd = new Random();
            soru = rnd.Next(0, 100);
            buttonBasla.Enabled = false;
        }

//Kontrol butonu için aşağıdaki kodları yazıyoruz.

private void buttonKontrol_Click(object sender, EventArgs e)
        {
            int aaa = Convert.ToInt32(textBoxTahmin.Text);
            if (aaa == soru)
            {
                labelSonuc.Text=”Bildiniz !!”;
                listBoxTahminler.Items.Add(aaa);
            }
            else if (aaa < soru)
            {
                labelSonuc.Text=”Yukarı”;
                listBoxTahminler.Items.Add(aaa);
            }
            else if (aaa > soru)
            {
                labelSonuc.Text=”Aşağı”;
                listBoxTahminler.Items.Add(aaa);

            }

     
        }

——————————————————-





Devamı gelecektir,bugünlük bu kadar .